Alvin Moore
53ea319ec7
Added support for publishing jni library to the packages/lib directory
2019-12-10 11:44:45 -08:00
Evan Tschannen
0953bf376d
fixed Javadoc headings
2019-10-25 13:38:04 -07:00
Andrew Noyes
95c6c9618e
Update documentation and testers for new options
2019-09-05 16:40:12 -07:00
Evan Tschannen
b509a441e7
Merge branch 'master' into feature-skip-confirm
...
# Conflicts:
# bindings/flow/tester/Tester.actor.cpp
# bindings/go/src/_stacktester/stacktester.go
# bindings/java/src/test/com/apple/foundationdb/test/AsyncStackTester.java
# bindings/java/src/test/com/apple/foundationdb/test/StackTester.java
# bindings/python/tests/tester.py
# bindings/ruby/tests/tester.rb
# documentation/sphinx/source/api-c.rst
# documentation/sphinx/source/api-python.rst
# documentation/sphinx/source/api-ruby.rst
# documentation/sphinx/source/data-modeling.rst
# documentation/sphinx/source/developer-guide.rst
# fdbclient/vexillographer/fdb.options
# fdbserver/MasterProxyServer.actor.cpp
2019-07-27 15:08:13 -07:00
A.J. Beamon
bc5c65e5ab
Merge pull request #1756 from jzhou77/db-option
...
Add transaction getApproximateSize() API
2019-07-19 08:33:24 -07:00
Alec Grieser
a26980682d
Merge pull request #1835 from TWarszawski/master
...
Add more information to the java binding jar's MANIFEST.
2019-07-18 14:01:46 -07:00
A.J. Beamon
93be69b6a3
Increase the API version to 620.
2019-07-18 10:56:05 -07:00
Todd Warszawski
24c7960c12
Removing uneccessary attributes from MANIFEST
2019-07-16 12:46:40 -07:00
TWarszawski
b0a6e2d2c4
Update bindings/java/CMakeLists.txt
...
Fix Specification-Title
Co-Authored-By: Alec Grieser <alloc@apple.com>
2019-07-16 11:22:10 -07:00
Evan Tschannen
7390df35a1
updated binding testers to set causalReadRisky
2019-07-15 11:39:03 -07:00
Todd Warszawski
af35061200
Addressing reviewer comments.
2019-07-15 08:51:22 -07:00
A.J. Beamon
d5051b08dd
Make trace event field lengths (and total event sizes) default knobified and configurable. Add a transaction option to control the field length of transaction debug logging. Make the program start command line field less likely to be truncated.
2019-07-12 16:12:35 -07:00
Jingyu Zhou
990c205f70
Push a string to stack for getApproximateSize in binding testers
...
Because different bindings may issue different limit for get_range calls, it is
impossible to return the same size value for getApproximateSize API. So we just
push a string to make sure binding test results are the same. Use another unit
test to make sure the sizes got back are monotonically increasing.
2019-07-12 14:15:20 -07:00
Jingyu Zhou
2dcc3cfd0a
Deprecate fdb_future_get_version for version 620
...
Use fdb_future_get_int64 in all bindings.
2019-07-11 21:17:31 -07:00
Jingyu Zhou
b2a89c8b77
Address review comments for PR #1756
...
Use fdb_future_get_int64 for language bindings and get rid of using Version
with getApproximateSize API.
2019-07-11 16:41:29 -07:00
Todd Warszawski
ada31e7dcc
Add more information to MANIFEST in jar.
2019-07-11 13:20:15 -07:00
Jingyu Zhou
5d1437c8e0
Push int directly to stack for getApproximateSize
2019-07-10 15:00:50 -07:00
Jingyu Zhou
0802df2c8f
Convert size from int to string before pushing onto stack
...
Using int is troublesome because the size of int can be different from the
desired 64 bits. So, using a string representation seems to be more consistent.
2019-07-10 14:58:35 -07:00
Jingyu Zhou
9d12843a26
Push size as tuple to stack
2019-07-10 14:58:35 -07:00
Jingyu Zhou
0ad2d2d16e
Add binding test for getApproximateSize API
2019-07-10 14:58:07 -07:00
Jingyu Zhou
4a15be3643
Code format for fdbJNI.cpp
2019-07-10 14:51:52 -07:00
Jingyu Zhou
c50a675bf0
Add transaction getApproximateSize() API
...
The size is the summation of expected size of mutations, read conflict ranges,
and write conflict ranges.
2019-07-10 14:51:52 -07:00
mpilman
7bfda1faaa
Fixed three more Windows issues
...
This is now compiling on my Windows machine
2019-06-27 11:39:36 -07:00
mpilman
ab7562160c
Made JavaWorkload an external workload
2019-06-19 13:03:41 -07:00
A.J. Beamon
296adada93
Use c++11 thread_local instead of redefining it to platform specific variants.
2019-05-23 18:35:45 -07:00
Alvin Moore
3acaa7343e
Enabled C++17 for all Windows projects
...
Set Visual Studio version to 2017 (first version to support C++17)
2019-05-16 17:44:13 -07:00
Alvin Moore
94aed513c7
Switched Windows tools within projects to 2017
2019-05-16 15:05:11 -07:00
Alvin Moore
648fc8ec7c
Merge pull request #1472 from mpilman/fixes/no-libfdbc-in-jar
...
Remove fdb_c from fat-jar
2019-05-01 14:23:56 -07:00
Trevor Clinkenbeard
9fea60675f
Fix comments to use transaction_too_old instead of past_version
2019-04-24 18:50:57 -07:00
mpilman
abb68cba92
Remove fdb_c from fat-jar
...
Fixes #1460
2019-04-18 13:26:27 -07:00
mpilman
160949d071
Remove unnecessary function
2019-04-02 16:28:34 -07:00
mpilman
d38efac7f8
minor code cleanup
2019-04-02 16:23:36 -07:00
mpilman
371a41dbba
Allow classPath to be modified at runtime
2019-04-02 11:56:40 -07:00
mpilman
6facfa931b
fixed weird encoding issue
2019-04-02 10:32:09 -07:00
mpilman
e23e63c6ac
Implemented JavaWorkload
...
This change allows a user to write a workload in Java.
The way this is implemented is by creating a JVM within the
simulator and calling the corresponding workload class. A
workload can then run in the simulator or on a testing cluster.
If the workload is executed within the simulator, the resulting
test will not be deterministic anymore as it will execute in a
different thread (and even without that it is not clear, whether
we could get determinism as the JVM does a lot of stuff that are
not deterministic).
This is intendet to get better testing of the Java client and
layer authors can use the simulator to test their layers on a single
machine but they can still simulate failing machines etc.
2019-03-31 17:57:43 -07:00
Alec Grieser
e6e2ea2af6
Merge remote-tracking branch 'upstream/master' into 00775-database-level-tr-options
2019-03-22 14:41:27 -04:00
Alec Grieser
4fff1f6756
add database options to bindingtester stack tester
2019-03-20 11:13:38 -06:00
Alec Grieser
253597466c
revert temporary testing changes
2019-03-18 13:00:59 -07:00
Alec Grieser
ff4386f4e4
TuplePerformanceTester no longer generates malformed UTF-16
2019-03-18 09:43:31 -07:00
Alec Grieser
715c2c980d
Fixes #1186 : Tuples: Malformed UTF-16 treated differently in Java and Python
...
Technically, they are still treated differently in Java and Python, but now, Java throws an exception if it encounters malformed UTF-16 to avoid serializing things in ways that it cannot deserialize. It also now throws an error when reading malformed UTF-8, which I think is safer as it stops it from accidentally doing something like reading bytes and then writing it back but accidentally writing to the wrong spot, but that might be a mistake.
2019-03-18 09:19:54 -07:00
Xin Dong
636d2ca631
Merge pull request #1207 from alecgrieser/tuple-performance-cache-packed
...
Java: Tuple serialization/deserialization uses fewer allocations
2019-03-13 15:53:52 -07:00
Alec Grieser
d9e9e0c521
use bitwise or instead of addition when reconsituting long
2019-03-11 18:26:08 -07:00
Balachandar Namasivayam
36c12cd749
Add missing definitions.
2019-03-11 17:49:03 -07:00
Alec Grieser
7340298202
remove debugging printing that was accidentally added
2019-03-11 16:57:36 -07:00
Alec Grieser
f66ddb13c2
rewrite replace without a buffer to use replace with a buffer to first get length
2019-03-11 16:57:36 -07:00
Alec Grieser
75e475563a
clarify comments and be more strict about using UUID_BYTES constant
2019-03-11 16:57:36 -07:00
Alec Grieser
40aa2ba6f0
CMakeLists alphabetization and Javadoc improvements
2019-03-11 16:57:36 -07:00
Alec Grieser
39fd30330f
memoize incomplete versionstamp information in Tuples ; add more tests
2019-03-11 16:55:01 -07:00
Alec Grieser
663d750e1d
pack Tuples with a single byte array allocation of the right size
2019-03-11 16:55:01 -07:00
Alec Grieser
a74dfa5487
compare strings by unicode codepoint without copying
2019-03-11 16:55:01 -07:00
Alec Grieser
e9771364d7
various Java tuple performance tweaks
...
These include:
* Memoizing packed representations within Tuples
* Using longs instead of BigIntegers if possible
* As much as possible sticking to manipulating primitive types when using floats/doubles
2019-03-11 16:55:00 -07:00
Alec Grieser
e6ce0ebd27
improve tuple performance tester for more types and add serialization check in TupleTest
2019-03-11 16:55:00 -07:00
Alec Grieser
78ff3d92c1
memoize the packed Tuple representation
2019-03-11 16:55:00 -07:00
A.J. Beamon
083a73b0d2
In our binding testers, stop using the TRANSACTION_LOGGING_ENABLE option and switch to the DEBUG_TRANSACTION_IDENTIFIER and LOG_TRANSACTION options
2019-03-11 13:35:43 -07:00
A.J. Beamon
4941d6dc3c
Merge pull request #1212 from alecgrieser/00719-read-transaction-set-read-version
...
Java: Move a few methods relevant to read-only transactions to `ReadTransaction`
2019-03-11 09:49:57 -07:00
Alec Grieser
83e4b966d5
Resolves #1235 : Java: FDBExceptions are created successful operation completion ( #1236 )
...
The native function `NativeFuture::Future_getError` now returns `null` when the error code is 0 instead of an `FDBException` with a "Success" message and an error code of 0. This was only used in two places within the codebase; those two places now check for `null` errors and treats them like successes.
2019-03-06 18:34:36 -08:00
Alex Miller
af617d68e6
boost 1.52.0 -> 1.67.0 in all vcxproj files
2019-03-05 22:06:12 -08:00
Alec Grieser
eb8a085cf9
conditional add read conflict methods now return whether they added the conflict range ; test added for snapshot transactions
2019-03-02 09:48:53 -08:00
Alec Grieser
7ef189701e
Resolves #719 : Support `.setReadVersion()` on `ReadTransaction`
2019-03-02 09:48:49 -08:00
A.J. Beamon
ad8bfc1b8f
Merge pull request #1166 from alecgrieser/tuple-performance-improvements
...
Java Tuples: Hash and equality improvements
2019-02-25 15:10:45 -05:00
mpilman
9b14aeb156
Tell cmake not to link/install on ide build
2019-02-19 15:16:59 -08:00
Alec Grieser
9bf4940249
Memoize Tuple hashes and do not pack for equality check
2019-02-18 08:54:25 -08:00
Alec Grieser
c6947db091
Add a basic performance tester of Java Tuples
2019-02-18 08:54:21 -08:00
mpilman
ddddda7328
docker-compose can now build rpm
...
weirdly it still generates a foundationd-unspecified
rpm. However, it is empty and can be ignored for now
2019-02-15 00:01:42 -08:00
mpilman
ffaaaf5028
build fat-jar with packages
...
The packages target will now build the fat jar and
it will place the jar file into the packages directory
2019-02-15 00:01:42 -08:00
mpilman
75f692b931
simplify actorcompiler and target to compile coveragetool
2019-02-15 00:01:42 -08:00
mpilman
70545e07d8
Added documentation on how to build the jar-files
2019-02-15 00:01:42 -08:00
mpilman
1ed149e624
Add option to build fat jar
2019-02-15 00:01:42 -08:00
mpilman
f601aa7407
Make Java an optional dependency
2019-02-15 00:01:42 -08:00
mpilman
7a858b902d
Most of FDB compiling on Windows with cmake
2019-02-07 15:37:04 -08:00
A.J. Beamon
2173e0acda
Remove ClusterOptions from generated sources in Java
2019-01-25 09:30:02 -08:00
Andrew Noyes
1c1e42396c
ClusterOptions.java is no longer generated
2019-01-24 16:04:56 -08:00
Andrew Noyes
6b34d62918
Fix GENERATED_JAVA_DIR
2019-01-24 15:59:18 -08:00
Andrew Noyes
aa566a755f
Account for file mv's/rm's in java bindings cmake
2019-01-24 15:41:27 -08:00
A.J. Beamon
8451c0cfc1
Favor nullptr in JNI code.
2019-01-10 13:13:21 -08:00
A.J. Beamon
bfa97d7ff2
Address review comments
2019-01-10 12:28:14 -08:00
A.J. Beamon
11cce3731b
Merge branch 'master' into remove-cluster-from-bindings
...
# Conflicts:
# bindings/c/fdb_c.cpp
2019-01-10 11:58:34 -08:00
Bhaskar Muppana
5a8419e5cf
Move Java specific setup into bindings/java/CMakeLists.txt
...
and s/SET/set
2019-01-02 21:19:08 -08:00
Markus Pilman
df0f491c29
Some more improvements to the build and preparations for packaging
2018-12-13 15:04:13 -08:00
Markus Pilman
f8eac70700
Fixed C bindings DLLEXPORT and Java bindings
2018-12-13 14:59:36 -08:00
A.J. Beamon
96b9cbcfcf
fdb_c.cpp needs access to the legacy types, the C binding test uses the new API, and a couple javadoc links fixed.
2018-11-26 13:07:36 -08:00
A.J. Beamon
890a0f3e82
Merge branch 'master' into remove-cluster-from-bindings
...
# Conflicts:
# bindings/flow/fdb_flow.actor.cpp
2018-11-26 12:01:03 -08:00
A.J. Beamon
d5357d2439
Update all of the bindings to use the new C API and deprecate or remove unneeded parts of their APIs.
2018-10-02 15:28:46 -07:00
A.J. Beamon
983a5bd390
Bump API version to 610
2018-09-26 10:58:07 -07:00
Alec Grieser
5128d9772d
cleverly use parentheses to ensure that the bitwise operation happens before the shift
...
This was casuing getUserVersion to return incorrect results if the user version was greater than 0x00FF.
Fixes #761
2018-09-10 18:18:13 -07:00
John Brownlee
9cad7c8a72
Merge remote-tracking branch 'upstream/release-5.2' into release-6.0-5.2-merge
...
# Conflicts:
# documentation/sphinx/source/downloads.rst
# documentation/sphinx/source/release-notes.rst
# packaging/msi/FDBInstaller.wxs
# versions.target
2018-07-31 13:17:37 -07:00
Alec Grieser
a2b3c71a74
thread custom executors through FDBDatabase::run and FDBDatabase::read
...
Closes #640 .
2018-07-30 16:53:07 -07:00
Alec Grieser
46b8612566
bump API version from 520 to 600
2018-07-09 11:00:57 -07:00
Alvin Moore
c3f88dbfe1
Merge branch 'master' of github.com:apple/foundationdb into tls-static
2018-07-01 23:13:57 -07:00
A.J. Beamon
2ed452353f
Merge branch 'release-5.2' into directory-tester-cleanup
2018-06-26 14:56:09 -07:00
Alvin Moore
ef8de426d3
Changed the TLS_DISABLED macro
...
Disable TLS within Windows until working
2018-06-26 12:08:32 -07:00
A.J. Beamon
1dbe24a6e8
In the Java directory layer, DirectoryLayer.exists returns true unconditionally when not passed a path. This is different than the other bindings, which run through the normal exists check, but which I believe will still ultimately return true. The major difference is that in Java, no read version is obtained, which can cause behavior differences in the binding tester. This adds a call to get the read version to the Java testers when processing the DIRECTORY_EXISTS instruction.
2018-05-30 15:38:50 -07:00
Alec Grieser
0c2e801d40
Merge remote-tracking branch 'upstream/release-5.1' into merge-release-5.1
2018-05-30 11:49:29 -07:00
A.J. Beamon
e172a7f6f1
Fix spacing in build file
2018-05-23 15:01:13 -07:00
A.J. Beamon
0b1bd4f765
Close transactions in ON_ERROR if the replace didn't succeed
2018-05-23 14:00:45 -07:00
A.J. Beamon
989a51e4a3
Java tester was failing to create new transactions properly in some cases
2018-05-23 13:05:15 -07:00
Alvin Moore
83c1754181
Modified the groupId to org.foundationdb
2018-05-17 12:53:57 -07:00
Alec Grieser
e5378083ec
honor length in Tuple.fromBytes when passed in
...
addresses #362
2018-05-10 15:27:01 -07:00
Alec Grieser
47c9e4f923
update bindings and bindingtester that uses versionstamps to use new protocol
...
issue #148
2018-05-08 08:57:09 -07:00
Alec Grieser
6ee14bbb93
expose second versionstamp value type through vexillographer and add support in bindings and bindingtester
2018-05-08 08:57:09 -07:00