Commit Graph

6818 Commits

Author SHA1 Message Date
Moritz Kiefer
ecad128123
Speed up daml-sdk-head Maven installation (#9559)
This PR speeds up the Maven installation by doing 4 things:

1. Disable TS builds. This doesn’t make sense since we never install
them.
2. Add a --skip-sdk option that skips the SDK installation.
3. Add a --skip-jar-docs option that skips javadoc and more
importantly scaladoc.
4. Add a --scala-version=$VERSION option to only build against the
given version.

Unfortunately there are no tests and the CLI is a bit messy (you need
--scala-version=$VERSION and not --scala-version $VERSION).

Both are not great but this is a development only tool and it is bash
so my motivation for fixing it is rather low.

Given that this is growing in complexity a fair bit, I think we might
be better off as a long-term solution to move this towards at least
python or maybe even Haskell or Scala. But definitely nothing for this
PR.

changelog_begin
changelog_end
2021-05-03 18:39:45 +02:00
Andreas Herrmann
e8d25b255e
Handle references to missing contracts (#9553)
* Take user defined mappings for unknown contracts

* Remove unused `allocateParties` helper

These are now provided in `args.json`.

* No longer fail on missing contract ids

* Generate a default args.json

* Configure daml start to run the export

Configures init-script and script-options such that `daml start` will
execute the export script with the default `args.json` input.

Configures navigator to display the default parties.

* Update daml export integration test

Input format has changed.

* Update documentation for daml ledger export

changelog_begin
* [Daml export] Daml ledger export now handles references to missing
  contracts. The generated export script takes a mapping from unknown
  contract ids to replacement contract ids as a parameter. Users can
  prepopulate the ledger with replacements of missing contracts and
  configure the export script to reference these replacements.
  The generated export script no longer exposes ``testExport`` as an
  entry point, instead Daml export generates a default input file
  ``args.json`` that can be used to execute the ``export`` function from
  ``daml script`` or ``daml start``.
changelog_end

* Reinstante testExport & allocateParties

Convenient for testing in Daml IDE or on ledgers that don't have
automatic party allocation.

* Add docstrings to the generated Daml export script

Co-authored-by: Andreas Herrmann <andreas.herrmann@tweag.io>
2021-05-03 15:52:40 +00:00
Stefano Baghino
8f6c92d409
Use common compiler plugins and options for the scaladoc_jar rule (#9558)
changelog_begin
changelog_end

Removes the following error message:

```
> bazel build //ledger-service/...
INFO: Invocation ID: a6259f2e-b4d2-445f-9fed-f1a456ba49b9
INFO: Analyzed 105 targets (0 packages loaded, 0 targets configured).
INFO: Found 105 targets...
INFO: From ScaladocGen ledger-service/http-json/http-json-ce_scaladoc_tmpdir:
error: bad option: -P:wartremover:traverser:org.wartremover.warts.NonUnitStatements
model contains 179 documentable templates
INFO: From ScaladocGen ledger-service/http-json/http-json-ee_scaladoc_tmpdir:
error: bad option: -P:wartremover:traverser:org.wartremover.warts.NonUnitStatements
model contains 179 documentable templates
INFO: From ScaladocGen ledger-service/http-json-testing/ee_scaladoc_tmpdir:
error: bad option: -P:wartremover:traverser:org.wartremover.warts.NonUnitStatements
model contains 21 documentable templates
INFO: From ScaladocGen ledger-service/http-json-testing/ce_scaladoc_tmpdir:
error: bad option: -P:wartremover:traverser:org.wartremover.warts.NonUnitStatements
model contains 21 documentable templates
INFO: From ScaladocGen ledger-service/http-json-perf/http-json-perf-ee_scaladoc_tmpdir:
error: bad option: -P:wartremover:traverser:org.wartremover.warts.NonUnitStatements
model contains 27 documentable templates
INFO: From ScaladocGen ledger-service/http-json-perf/http-json-perf-ce_scaladoc_tmpdir:
error: bad option: -P:wartremover:traverser:org.wartremover.warts.NonUnitStatements
model contains 27 documentable templates
INFO: From ScaladocGen ledger-service/http-json/integration-tests-lib-ce_scaladoc_tmpdir:
model contains 14 documentable templates
INFO: From ScaladocGen ledger-service/http-json/integration-tests-lib-ee_scaladoc_tmpdir:
model contains 14 documentable templates
INFO: Elapsed time: 145.575s, Critical Path: 144.69s
INFO: 43 processes: 6 remote cache hit, 1 internal, 22 linux-sandbox, 14 worker.
INFO: Build completed successfully, 43 total actions
```
2021-05-03 15:06:05 +00:00
Stefano Baghino
94e9ec2966
Remove a couple of warts (#9557)
changelog_begin
changelog_end
2021-05-03 14:37:36 +00:00
Robin Krom
84359ffa73
nested record updates (#9505)
* record dot updates: update to new ghc-lib-parser

This updates the ghc-lib-parser library featuring record dot updates and
adds tests for the new feature.

CHANGELOG_BEGIN
CHANGELOG_END

* update snapshot after pin on windows

* added a test for error locations

* nested record puns test

* update ghc commit

* update of stack dependencies (linux)

* update stack snapshot(windows)
2021-05-03 16:27:01 +02:00
mziolekda
22fcbccc7a
publish ledger-on-memory to maven (#9548)
* publish ledger-on-memory to maven
changelog_begin
changelog_end

* modify the list of published artifacts
2021-05-03 15:17:27 +02:00
Moritz Kiefer
16f074f557
Handle curl failures in vscode publish process (#9547)
Currently CI is failing with a 401. Confusingly, it doesn’t fail
during this step but fails during the upload below later because
$MARKET ends up pointing to garbage. This does not solve the failure
but it produces a more sensible error.

changelog_begin
changelog_end
2021-05-03 15:11:30 +02:00
Moritz Kiefer
e7ba79da72
Release another 1.13.0 snapshot (#9551)
changelog_begin
changelog_end
2021-05-03 13:36:21 +02:00
Moritz Kiefer
55c3e1cf45
Test multi-keys behavior (#9472)
* Document and test multi-key semantics

Canton relies on the Engine working correctly even in a setting where
we do not have multiple keys. So far this worked by accident but the
semantics of this are rather unclear. To make things worse, Canton
upgrades rely on those semantics being stable so we really do care
about the choices we make here.

This PR adds a bunch of tests as an executable documentation of the
current behavior. However, we do not provide stability guarantees for
the current behavior and therefore these tests can be changed as
needed. But at least we are aware of those changes rather than doing
them by accident.

changelog_begin
changelog_end

* Update daml-lf/engine/src/test/scala/com/digitalasset/daml/lf/engine/EngineTest.scala

Co-authored-by: Sofia Faro <sofia.faro@digitalasset.com>

* Update daml-lf/tests/MultiKeys.daml

Co-authored-by: Sofia Faro <sofia.faro@digitalasset.com>

* Update daml-lf/tests/MultiKeys.daml

Co-authored-by: Sofia Faro <sofia.faro@digitalasset.com>

Co-authored-by: Sofia Faro <sofia.faro@digitalasset.com>
2021-05-03 12:59:57 +02:00
Moritz Kiefer
ca012c3b54
Improve script errors when the endpoint is not the JSON API (#9550)
fixes #9532

changelog_begin
changelog_end
2021-05-03 09:13:49 +00:00
Andreas Herrmann
8678791653
Separate Daml export creation from encoding (#9542)
* Merge ACS encoding with transactions

Both can be first converted to Actions and only then encoded.

* Check for unknown contract id references in ACS and tree

* Separate construction and encoding of export

* Factor out export actions encoding

* inline encodeTransactionTreeStream

* Add test-cases for cid references in export

* Don't crash on unknown contract reference in ACS

changelog_begin
changelog_end

Co-authored-by: Andreas Herrmann <andreas.herrmann@tweag.io>
2021-05-03 10:43:32 +02:00
Moritz Kiefer
ae2cd41766
Share code between SBUFetchKey and SBULookupKey (#9537)
* Share code between SBUFetchKey and SBULookupKey

Those do almost the same and the logic is growing increasingly complex
so I really want to share it. This also makes it easier to see the
things that are different.

Along the way I’ve also discovered a bug:
SBUFetchKey called crash where it should produce a proper error that
can be caught by submitMustFail. Not going to resolve that in this PR
though so I just added a TODO.

changelog_begin
changelog_end

* review comments

changelog_begin
changelog_end
2021-04-30 17:53:31 +00:00
Bernhard Elsner
340643eae2
Add a sentence to the DDfPSQL docs to give a download link (#9534)
CHANGELOG_BEGIN
CHANGELOG_END
2021-04-30 18:11:27 +02:00
Hubert Slojewski
0e5c4d4782
KVL-919 Propagate trace context for package upload (#9543)
CHANGELOG_BEGIN
CHANGELOG_END
2021-04-30 16:51:25 +02:00
Moritz Kiefer
a937a66463
Fix TransactionCommitter.trimUnnecessaryNodes for rollback nodes (#9536)
* Fix TransactionCommitter.trimUnnecessaryNodes for rollback nodes

changelog_begin
changelog_end

* Update ledger/participant-state/kvutils/src/test/suite/scala/com/daml/ledger/participant/state/kvutils/committer/transaction/TransactionCommitterSpec.scala

Co-authored-by: Samir Talwar <samir.talwar@digitalasset.com>

* switch error code

changelog_begin
changelog_end

Co-authored-by: Samir Talwar <samir.talwar@digitalasset.com>
2021-04-30 12:17:58 +00:00
Marton Nagy
b25c904fc8
Introduce combined storeTransaction method in LedgerDao for sandbox-classic (#9540)
Motivation of this PR: with the help of this combined method, wiring of the
append-only schema ingestion becomes possible.

* Add proper implementation for dao
* Adapts sandbox-classic usage

changelog_begin
changelog_end
2021-04-30 09:09:53 +00:00
azure-pipelines[bot]
df6bc31c50
update NOTICES file (#9541)
CHANGELOG_BEGIN
CHANGELOG_END

Co-authored-by: Azure Pipelines DAML Build <support@digitalasset.com>
2021-04-30 06:56:12 +00:00
Marton Nagy
c85da6def0
Minor refactoring (#9539)
* Add TODO comments to guide further work
* Add and wire up StorageBackend factory

changelog_begin
changelog_end
2021-04-29 23:47:13 +00:00
Marton Nagy
d2fb1f3759
Moving StorageBackend and related artifacts to their proper place (#9535)
This PR is exclusively about moving files around, no code change.

changelog_begin
changelog_end
2021-04-29 17:15:37 +00:00
Gary Verhaegen
af4fffad0f
increase Linux CI size (#9533)
CHANGELOG_BEGIN
CHANGELOG_END
2021-04-29 18:17:10 +02:00
Oliver Seeliger
88928414cb
Creating empty oracle scala flyway migration package (#9522)
* Precreate Oracle indexer scala migration package

This avoids needing to special case FlywayMigrations to not include
scala migrations which will be more robust when adding the first oracle-based
scala migration.

changelog_begin
changelog_end

* Review feedback - remove FIXME
2021-04-29 17:18:32 +02:00
Moritz Kiefer
4aca199bbd
Upgrade to Scala 2.13.5 (#9528)
changelog_begin
changelog_end
2021-04-29 13:05:57 +00:00
Marton Nagy
ec86d97653
First draw of an interface separating ingestion and storage (#9517)
The intent of this change is to make the first step in this direction
in order to support dpp-336 work of sanbdox-classic integration by
injecting DAO functionality via this interface.
Level of quality is still pre-production, hence TODO comments.
Planned next step: move StorageBackend interface, and implementation
to platform/store, to it's final place.

* Introduce StorageBackend interface
* Decouple event-seq-id assignment logic from storage specific batching
* Pull out of batching step from input mapping, execution too
* Switch to stateless DAO functions
* Switch to DBDispatcher instead of custom JDBC Connection pool
* Introduce/adapt metrics
* Naturally extend configuration
* Move RunningBatch layer to ParallelIndexerFactory
* Remove dead code

changelog_begin
changelog_end
2021-04-29 12:54:25 +00:00
Sofia Faro
a5d1e185ab
Move builtin exceptions to a stable package. (#9523)
* Move builtin exceptions to a stable package.

This PR moves the built-in exceptions (GeneralError, ArithmeticError, ContractError) to a stable package in daml-prim, in preparation for removing them from LF proper.

Part of #8020.

changelog_begin
changelog_end

* Update tests

* rename the module

* couple that got away

* update hash

* Update dar reader test.

* typo

* questionable lint
2021-04-29 10:19:20 +00:00
nickchapman-da
81a4557d18
Allow missing exercise results when version >= minExceptions (#9531)
* Allow missing exercise results when version >= minExceptions

imp:
- adapt encode & decode implementations
- add version dependant checks for version < `minExceptions`

testing:
- update scalacheck `ValueGenerators` to produce exercise nodes with the missing result value guarded by the versions
- update `normalizeExe` in `TransactionCoderSpec`
- update `transactionVersionGen` to be inclusive on upper bound
- unhappy-path test for encode/missing-exercise-result when not allowed
- unhappy-path test for decode/missing-exercise-result when not allowed

changelog_begin
changelog_end
2021-04-29 10:32:53 +01:00
Samir Talwar
9527b2e2ab
kvutils: Make Step a trait to carry the logging context more easily. (#9525)
Implicits and lambdas don't work well together.

CHANGELOG_BEGIN
CHANGELOG_END
2021-04-29 08:05:59 +00:00
Moritz Kiefer
977b23ac9f
Support rollback nodes in ActiveStateManager (#9486)
* Support rollback nodes in ActiveStateManager

If some one can point me to existing tests for ActiveStateManager,
I’ll happily extend them I failed to find any.

I did test it against #9400 and it fixes most tests and the failing
ones fail in other parts so at that level it seems to work as
expected.

changelog_begin
changelog_end

* Better comments

changelog_begin
changelog_end

* less Set()

changelog_begin
changelog_end

* switch pattern matching

changelog_begin
changelog_end

* Clarify comment

changelog_begin
changelog_end

* Simplify tracking of archivedIds

changelog_begin
changelog_end

* Document where ActiveLedgerStateManager is used

changelog_begin
changelog_end

* Blow up when using rollback nodes with a mutable ALS

changelog_begin
changelog_end
2021-04-29 10:02:57 +02:00
Hubert Slojewski
ceec40b299
Propagate trace context for party allocation (#9524)
CHANGELOG_BEGIN
CHANGELOG_END
2021-04-29 09:42:15 +02:00
Moritz Kiefer
2f54be4f11
Fix ImmArray.copyToArray (#9527)
changelog_begin
changelog_end
2021-04-28 20:47:55 +00:00
Samir Talwar
56a0448c7b
kvutils: Use the contextualized logger in the committer. (#9516)
This means we don't have to provide context explicitly on each log line;
it'll get passed through.

We include extra logging context, extracted from the state at each step.

CHANGELOG_BEGIN
CHANGELOG_END
2021-04-28 12:00:56 +00:00
Moritz Kiefer
4f60fc6d4a
Handle rollback nodes in TransactionConversion (#9487)
In combination with #9486 this gets us to the point where all tests
from #9400 pass against Sadbonx classic.

changelog_begin
changelog_end
2021-04-28 13:46:03 +02:00
azure-pipelines[bot]
d028c043bc
update compat versions for 1.13.0-snapshot.20210426.6770.0.ca66061b (#9514)
CHANGELOG_BEGIN
CHANGELOG_END

Co-authored-by: Azure Pipelines DAML Build <support@digitalasset.com>
2021-04-28 11:34:22 +02:00
Sofia Faro
1d47b27304
Update LF spec transaction structure. (#9510)
Just some small changes to take into account the new ledger model transaction structure (see #9396). This PR doesn't fix all the issues with the LF spec not matching the ledger model, but it tries to avoid widening that gap.

* Removed itr, iexercise which we don't need.
* Removed the exception type and value from the rollback node.
* We're not calling rollback nodes ledger actions anymore, so separate it out.

Part of #8020

changelog_begin
changelog_end
2021-04-28 09:23:53 +01:00
azure-pipelines[bot]
727a06a707
update NOTICES file (#9520)
CHANGELOG_BEGIN
CHANGELOG_END

Co-authored-by: Azure Pipelines DAML Build <support@digitalasset.com>
2021-04-28 10:13:16 +02:00
Moritz Kiefer
0075ff1899
Pass along tags in da_scala_test_suite (#9521)
changelog_begin
changelog_end
2021-04-28 09:14:27 +02:00
azure-pipelines[bot]
8f9ed92d6b
rotate release duty after 1.13.0-snapshot.20210428.6782.0.e1e878a5 (#9519)
@nickchapman-da is taking care of 1.13.0-snapshot.20210428.6782.0.e1e878a5 (#9518), so they get pushed back to the end of the line.

Please do not merge this before #9518.

CHANGELOG_BEGIN
CHANGELOG_END

Co-authored-by: Azure Pipelines DAML Build <support@digitalasset.com>
2021-04-28 09:01:50 +02:00
Stefano Baghino
e1e878a597
Simplify opt-in/out of Oracle when building (#9515)
* Simplify opt-in/out of Oracle when building

- defines Oracle-related environment variables as part of dev-env so that it's the same across CI and dev
- adds a Bazel 'oracle' configuration so that --config=oracle pulls all required environment

changelog_begin
changelog_end

* Address https://github.com/digital-asset/daml/pull/9515#discussion_r621180994

* Also use `$ORACLE_USERNAME` instead of `system` in the `sqlplus` connection string

* Address https://github.com/digital-asset/daml/pull/9515#discussion_r621186459
2021-04-28 06:10:43 +02:00
Hubert Slojewski
d761853832
KVL-874 Add unit tests for Telemetry (#9500)
* Add unit tests for Telemetry
CHANGELOG_BEGIN
CHANGELOG_END

* Make Tracers injectable, improve the TelemetryContextSpec, add a metrics-test-lib package
2021-04-27 23:59:39 +02:00
Moritz Kiefer
c567680860
Support rollback nodes in PostCommitValidation (#9501)
* Support rollback nodes in PostCommitValidation

With that and the other in-flight PRs, #9400 now passes against Daml
on SQL.

changelog_begin
changelog_end

* Update ledger/participant-integration-api/src/main/scala/platform/store/appendonlydao/events/PostCommitValidation.scala

Co-authored-by: Stefano Baghino <43749967+stefanobaghino-da@users.noreply.github.com>

* Update ledger/participant-integration-api/src/main/scala/platform/store/appendonlydao/events/PostCommitValidation.scala

Co-authored-by: Stefano Baghino <43749967+stefanobaghino-da@users.noreply.github.com>

* Update ledger/participant-integration-api/src/main/scala/platform/store/dao/events/PostCommitValidation.scala

Co-authored-by: Stefano Baghino <43749967+stefanobaghino-da@users.noreply.github.com>

* Update ledger/participant-integration-api/src/main/scala/platform/store/dao/events/PostCommitValidation.scala

Co-authored-by: Stefano Baghino <43749967+stefanobaghino-da@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Miklos <57664299+miklos-da@users.noreply.github.com>

* fmt

changelog_begin
changelog_end

Co-authored-by: Stefano Baghino <43749967+stefanobaghino-da@users.noreply.github.com>
Co-authored-by: Miklos <57664299+miklos-da@users.noreply.github.com>
2021-04-27 17:22:46 +00:00
Moritz Kiefer
a335ee8971
Support rollback nodes in KeyValueCommitting.submissionOutputs (#9512)
* Support rollback nodes in KeyValueCommitting.submissionOutputs

As discussed on Slack overapproximating and thereby not treating nodes
under a rollback special seems like a good first step and matches what
we do for transient contracts.

changelog_begin
changelog_end

* Newlines

changelog_begin
changelog_end

* better variable names

changelog_begin
changelog_end

* Outline test function

changelog_begin
changelog_end

* Apply suggestions from code review

Co-authored-by: Miklos <57664299+miklos-da@users.noreply.github.com>

* Update ledger/participant-state/kvutils/src/main/scala/com/daml/ledger/participant/state/kvutils/KeyValueCommitting.scala

Co-authored-by: fabiotudone-da <fabio.tudone@digitalasset.com>

* Factor out result computation

changelog_begin
changelog_end

Co-authored-by: Miklos <57664299+miklos-da@users.noreply.github.com>
Co-authored-by: fabiotudone-da <fabio.tudone@digitalasset.com>
2021-04-27 15:31:31 +00:00
Moritz Kiefer
8747b3d7dc
Support rollback nodes in TransactionIndexing (#9506)
* Support rollback nodes in TransactionIndexing

changelog_begin
changelog_end

* Remove leftover comment

changelog_begin
changelog_end

* add missing dep

changelog_begin
changelog_end
2021-04-27 15:47:02 +02:00
Samir Talwar
c4cf3c93bd
kvutils: Log a missing input state warning without the stack trace. (#9513)
Missing input state is the fault of the participant, not the ledger.
Logging it as a warning, with a stack trace, makes it look like the
ledger itself failed, when actually the participant failed to provide
the correct keys (potentially due to data corruption, but it could also
be malicious).

This drops the stack trace to make the error less scary. We still log at
WARN level because this sort of thing shouldn't happen very often, and
at the very least, the participant operator should be informed, and the
participant should be refreshed with the correct data somehow.

CHANGELOG_BEGIN
CHANGELOG_END
2021-04-27 13:26:38 +00:00
Stephen Compall
4e712a01a0
add oracle option for json-api perf runner (#9492)
* add oracle option to http-json-perf-binary-ee

* add oracle path to perf Main's JDBC bracket

* adapt to availableJdbcDriverNames; missing deps

* add changelog

CHANGELOG_BEGIN
- [JSON-API Perf] ``--query-store-index=postgres`` must be passed
  to select PostgreSQL query store performance testing; ``true``
  and ``yes`` are no longer supported.
  See `issue #9492 <https://github.com/digital-asset/daml/pull/9492>`__.
CHANGELOG_END
2021-04-27 08:58:44 -04:00
Samir Talwar
8cd3658b14
Switch to an environment variable for enabling Oracle tests. (#9511)
* participant-integration-api: Build Oracle tests, but don't run them.

CHANGELOG_BEGIN
CHANGELOG_END

* triggers: Switch to an environment variable for enabling Oracle tests.

* http-json: Switch to an environment variable for enabling Oracle tests.

* Disable running Oracle tests by default, not building them.

* triggers/service: Remove unused test dependencies.
2021-04-27 11:50:39 +00:00
Gary Verhaegen
e39c20ecbc
update GPG public key (#9488)
The existing public key is set to expire in May, so we've changed it.

Note: this _should_ require no other change as the private key is
unchanged (i.e. the new public key can be used to verify old
signatures), but my understanding of GPG is somewhat limited so 🤷.

CHANGELOG_BEGIN
CHANGELOG_END
2021-04-27 13:40:02 +02:00
nickchapman-da
782109de7e
update LATEST (#9508)
changelog_begin
changelog_end
2021-04-27 10:47:59 +00:00
Stefano Baghino
3e6661128d
Nest stakeholders in contracts table as JSON arrays (#9484)
* Nest stakeholders in contracts table as JSON arrays

changelog_begin
changelog_end

* Address https://github.com/digital-asset/daml/pull/9484#discussion_r619468382

* Addresses https://github.com/digital-asset/daml/pull/9484#discussion_r619470603 and https://github.com/digital-asset/daml/pull/9484#discussion_r619472278

* Partly address https://github.com/digital-asset/daml/pull/9484#discussion_r619470992

* Update ledger-service/db-backend/src/main/scala/com/digitalasset/http/dbbackend/Queries.scala

Co-authored-by: Stephen Compall <stephen.compall@daml.com>

Co-authored-by: Stephen Compall <stephen.compall@daml.com>
2021-04-27 12:27:25 +02:00
azure-pipelines[bot]
aecdc2aca2
update NOTICES file (#9507)
CHANGELOG_BEGIN
CHANGELOG_END

Co-authored-by: Azure Pipelines DAML Build <support@digitalasset.com>
2021-04-27 09:59:32 +02:00
Brian Healey
ca66061b28
Ledger Api Oracle support (#9277)
* WIP : first cut at changed schema files for oracle
Define Oracle as DbType and handle necessary case match switches for it
recomputed shas for oracle migration scripts
Oracle fixtures
get things compiling
Able to connect to Oracle
Working through getting schema definitions functional with Oracle
runnable schema definitions only for active tables on oracle
delete commented lines in schema scripts
use oracle enterprise
correct inadvertently changed postgres schemas
WIP - latest oracle-ificiation
passing upload packages spec
add additional test for package upload entry read
correct typo in oracle database spec name
use BLOB for parties ledger_offset
package_entries use hex version of offset for range queries
reformat and update shas for sql scripts
binary numeric implicit conversion for oracle
correct duplicate exception text for oracle
parties test passing on oracle
add additional column to hold hex offset for party_entries
party_entries working for all dbs
scalafmt
Configuration ledger_offset should be BLOB
update sha of oracle sql files
enable passing tests in order
remove misleading null comments
define additional custom VARRAY types
add participant-integration-api-oracle tests to linux-oracle job
Add TODO for places where we need to deal with separate implicit imports for Oracle vs Postgres/H2
oracle implicit conversions for custom arrays and other problematic types

Do not override default debug level for all tests in participant-integration-api

CHANGELOG_BEGIN
Ledger API and Indexer Oracle Support
CHANGELOG_END

passing TransactionWriterSpec
passing JdbcLedgerDaoCompletionsSpec JdbcLedgerDaoDivulgenceSpec
passing JdbcLedgerDaoContractsSpec
All Oracle tests passing apart from one post-commit validation test

* Remove JdbcLedgerDaoValidatedOracleSpec as this is only relevant for classic postgres-backed sandbox

* rebase to master -- offsets are now varchar2 rather than blob

* remove use of DBMS_LOB operations

* remove all greater than/less than variants for DBMS_LOB

* revert postgres files that need not be touched

* code review feedback : avoid code duplication

* avoid indirection in type names for oracle arrays

* code review: HexString implicit conversions are not needed

* code review: Oracle case is not yet implemented for appendonlydao

* code review: Oracle case is not yet implemented for appendonlydao (cleanup import)

* code review: revert files that should not be touched

* address code review feedback: db specific imports for command completion become part of queries

* code review: perform db-specific reserved word escape to avoid case match

* code review: remove all dbms_lob comparison operations

* use simpler insert into with ignore dupes hint for oracle

* code review: avoid db specific match case in events range, use db specific limitClause

* code review: restore group by on Binary and Array fields for H2 and Postgres, disable for Oracle

* code review: restore group by on Binary and Array fields for H2 and Postgres, disable for Oracle

* code review: restore group by on binary and array fields for non-oracle dbs, honour the calculation of limit size from QueryParty.ByArith

* code review: honour the calculation of limit size from QueryParty.ByArith

* code review: drop user after oracle test

* code review: remove drop user as it throws errors due to dangling sessions

* code review: revert incorrectly changed postgres schema files

* code review: clean up TODOs

* Remove // before hostname for consistency with other oracle connection strings

* code review: unambiguously scope table column referenced in select and where queries

* code review: correct duplicate table alias
2021-04-26 18:34:17 -04:00
Samir Talwar
e1af564bcc
Switch from @silent to @nowarn. (#9498)
* Switch from `@silent` to `@nowarn`.

This annotation is native to Scala 2.12.13+ and 2.13.2+. It replaces
most usages of `@silent`.

I had to get creative about a couple of use cases that didn't work.
Specifically:

  1.  Suppressing deprecation warnings works, but Scala 2.12 erroneously
      complains that the `@nowarn` is unnecessary.  I had to suppress
      this warning too with `-Ywarn-unused:-nowarn`.
  2.  I can't seem to suppress the warning, "The outer reference in this
      type test cannot be checked at run time." Instead, I have
      refactored the code to remove the warning.

We still need to use the silencer plugin to suppress some warnings about
unused imports (because of compatibility between Scala 2.12 and 2.13),
but this means we no longer need the library, and therefore it is not a
transitive dependency that downstream consumers need to worry about.

CHANGELOG_BEGIN
CHANGELOG_END

* Add some comments around `@nowarn` support.

* language-support/scala: Fix a warning suppression.

* Revert to the default warnings.

Compatibility was complaining.
2021-04-26 19:46:14 +00:00