David Renshaw
8dbd5cf25f
make new unit test less memory intensive
2021-05-11 21:12:10 -04:00
David Renshaw
eb73990798
fix potential overflow in DefaultAllocator
...
Fixes a bug where the allocator's `nextSize` variable could overflow
and become negative, causing more segments to be allocated than expected.
Also removes a duplicate `this.nextSize += size` statement that
likely made the problem worse.
2021-05-11 21:07:37 -04:00
David Renshaw
07e47d4104
add some documentation about the new 'no limit' option
2021-05-09 14:53:54 -04:00
Wim Dumon
cc4fa2bbc8
Offer option to disable traversalLimitInWords
...
Use case: large trusted input data file, mapped in memory by
MappedByteBuffer, which is often re-queried so a sensible
limit cannot be set.
2021-04-28 17:47:58 +02:00
Vaci Koblizek
950ba824b9
use java11 switches and completablefutures
2021-04-05 11:05:52 +01:00
Vaci Koblizek
1bf1228756
revert to java version 11
2021-04-05 11:05:52 +01:00
Vaci Koblizek
22e5ab34a9
Merge remote-tracking branch 'sandstorm/master'
2020-12-07 19:35:51 +00:00
Vaci Koblizek
c7621d1de3
whenMoreResolved should return null when resolved
2020-12-07 18:55:54 +00:00
David Renshaw
cf62cd4a58
Fix build on Fedora 33
2020-12-06 20:47:53 -05:00
Vaci Koblizek
21d3eba0e5
remove CompletableFutureWrapper
2020-12-05 14:55:28 +00:00
Vaci Koblizek
25c50b105d
moar capTable context maintenance
2020-12-03 15:06:35 +00:00
Vaci Koblizek
196b82515c
ensure StructBuilders and StructLists maintain capTable context
2020-12-03 14:25:15 +00:00
Vaci Koblizek
f74ad80dea
remove cancellation completion for now
2020-12-03 14:25:15 +00:00
Vaci Koblizek
53eeed97e2
make direct call if QueuedClient has resolved
2020-12-01 17:12:49 +00:00
Vaci Koblizek
3b1f5f416c
use lists for queued calls, clean up on resolution
2020-12-01 17:08:27 +00:00
Vaci Koblizek
837f1b324c
add AnyList
2020-11-30 20:22:36 +00:00
Vaci Koblizek
2b5bf0eb21
tidy up branding and implement QueuedClient,getBrand() correctly
2020-11-30 18:52:28 +00:00
Vaci Koblizek
c04bdb8088
add clienthook commentary
2020-11-30 18:42:04 +00:00
Vaci Koblizek
d02e460f06
tidy up response and pipeline construction
2020-11-30 17:47:37 +00:00
Vaci Koblizek
66ee9471f9
replace Integers with FileDescriptors
2020-11-28 09:55:53 +00:00
Vaci Koblizek
ab44843b12
QueuedClient should stop queuing calls once it has resolved
2020-11-27 15:24:41 +00:00
Vaci Koblizek
789d2df6e4
replace PipelineOp[] with short[]
2020-11-27 13:30:35 +00:00
Vaci Koblizek
a53f7db25e
remove extraneous ArrayList wrapper from ops key
2020-11-27 11:30:12 +00:00
Vaci Koblizek
250f14e2f4
simplify QueuedPipeline promise
2020-11-27 11:25:39 +00:00
Vaci Koblizek
6e5bcc62ae
replace typeless requests with anonymous implementations
2020-11-27 10:19:06 +00:00
Vaci Koblizek
585a21259e
remove unused AnyRequest.send()
2020-11-27 09:50:26 +00:00
Vaci Koblizek
a3837e6010
message loop exit logging level as FINE
2020-11-26 16:09:07 +00:00
Vaci Koblizek
a2a17ea3cb
remove CapabilityServerSetBase, add test case
2020-11-26 16:03:13 +00:00
Vaci Koblizek
772108ff12
add testEmbargoNull test
...
throw RpcExceptions rather than RuntimeExceptions
2020-11-26 15:06:20 +00:00
Vaci Koblizek
e3d52a0bbd
use gather writes for AsynchronousSocketChannels
2020-11-26 14:22:13 +00:00
Vaci Koblizek
de85613570
consistent naming of factories
2020-11-26 13:07:28 +00:00
Vaci Koblizek
07f8f22acd
implement call blocking stack
2020-11-25 19:43:18 +00:00
Vaci Koblizek
941a254e41
by default, streaming calls fal back to regular calls
2020-11-25 15:53:25 +00:00
Vaci Koblizek
2d072a6b12
implement streaming requests
2020-11-25 15:47:02 +00:00
Vaci Koblizek
594e5e3a28
reduce visibility of cap contexts
2020-11-24 17:48:08 +00:00
Vaci Koblizek
5a27b4b860
tidy up Builder refs in AnyPointer.Pipeline
2020-11-24 15:38:07 +00:00
Vaci Koblizek
9465ffde5b
add default getBrand to RequestHook
2020-11-24 15:37:28 +00:00
Vaci Koblizek
119a682d4d
memoise queuespipeline caps. use queues to order queuedclient resolution
2020-11-23 19:56:54 +00:00
Vaci Koblizek
1cadca604e
add releaseCall to delay call execution
2020-11-20 17:07:45 +00:00
Vaci Koblizek
e314d26ab3
use sendInternal rather than calling hook directly
2020-11-20 16:35:38 +00:00
Vaci Koblizek
d3e639eaee
add capability tail call test
2020-11-20 16:32:42 +00:00
Vaci Koblizek
1366e28fd5
simplify conversion to CompletableFuture<Void>
2020-11-19 17:36:48 +00:00
Vaci Koblizek
68edac583b
remove unused getVatIdFactory()
2020-11-19 15:26:21 +00:00
Vaci Koblizek
ad17a4c148
refactor connection and disconnection
2020-11-13 17:57:49 +00:00
Vaci Koblizek
c0a57d304f
merge resolveTask into constructor
2020-11-13 08:10:59 +00:00
Vaci Koblizek
69a045deec
make requests autoclosable and cleanup disconnection
2020-11-12 22:15:07 +00:00
Vaci Koblizek
4e9e7f4068
cancellation
2020-11-12 21:27:44 +00:00
Vaci Koblizek
f3bb329e96
generalise AnyPointer setAs AnyPointer
2020-11-10 11:42:23 +00:00
Vaci Koblizek
91a93734e1
generalise AnyPointer setAs AnyPointer
2020-11-10 11:34:26 +00:00
Vaci Koblizek
dcd9eb37c7
add override to set clients from completablefutures
2020-11-09 21:43:32 +00:00
Vaci Koblizek
cefd8eaaa2
add AnyStruct
2020-11-09 18:08:56 +00:00
Vaci Koblizek
f2df5c2191
implement rpc tail calls
2020-11-09 18:08:07 +00:00
Vaci Koblizek
cee3aa79ae
set AnyPointer from AnyPointer
2020-11-09 18:08:00 +00:00
Vaci Koblizek
f8cdfdea09
set AnyPointer from AnyPointer
2020-11-09 18:02:05 +00:00
Vaci Koblizek
f640a8ffd4
allow copyPointer to copy capabilities
2020-11-09 17:42:05 +00:00
Vaci Koblizek
9e6d495d56
add runtime-rpc module and refactor project
2020-11-08 17:24:42 +00:00
Vaci Koblizek
6b8898c27b
make noop public
2020-11-07 16:01:07 +00:00
Vaci Koblizek
45d1470907
make anypipeline.noop public
2020-11-07 15:59:25 +00:00
Vaci Koblizek
66fc361386
stub out two-party test suite for now
2020-11-07 15:58:39 +00:00
Vaci Koblizek
0ce52fe135
add resolve test and fix handleResolve bugs
2020-11-06 15:32:20 +00:00
Vaci Koblizek
850a603877
oops, correct assertion of missing question
2020-11-06 13:58:36 +00:00
Vaci Koblizek
e8a118f364
add overload for messageSizeHint
2020-11-06 13:58:36 +00:00
Vaci Koblizek
7d2e541603
fix getNetwork bug, remove unnecessary TwoPartVatNetwork specialisation
2020-11-06 13:58:36 +00:00
Vaci Koblizek
1f004779d4
rpc tests
2020-11-05 21:38:43 +00:00
Vaci Koblizek
054213a0ac
add rpc bootstrap factory
2020-11-05 21:38:43 +00:00
Vaci Koblizek
9d023f0449
fix generic pipeline params. add (non-generic, for now) capability list
2020-11-05 21:38:43 +00:00
Vaci Koblizek
518769247b
remove generated schema.schema
2020-11-05 17:59:05 +00:00
Vaci Koblizek
02789acf29
add TestInterface.baz. Stub out broken TestGenerics
2020-11-05 17:59:05 +00:00
Vaci Koblizek
630d71d4e5
implement more capability tests
2020-11-05 17:59:05 +00:00
Vaci Koblizek
33d16c4fb6
add READY_NOW
2020-11-05 17:59:05 +00:00
Vaci Koblizek
8565c40c14
capability test suite
2020-11-05 17:59:05 +00:00
Vaci Koblizek
a10e48d140
test schemas
2020-11-05 17:59:05 +00:00
Vaci Koblizek
d515500996
get rid of PipelineBase and PipelineImpl again
2020-11-05 17:59:05 +00:00
Vaci Koblizek
8eacc8cada
major refactor of RemotePromise and Pipeline
2020-11-05 17:59:05 +00:00
Vaci Koblizek
2d8fe31a59
generic interface generation (WIP
2020-11-05 17:59:05 +00:00
Vaci Koblizek
86ccdd5a55
move cleanup to end of message loop
2020-11-05 17:59:05 +00:00
Vaci Koblizek
94ca2a04e6
remove sync modifier from getConnectionState and tidy
2020-11-05 17:59:05 +00:00
Vaci Koblizek
f2b2fc769f
go back to using CompletableFuture (sigh)
2020-11-05 17:59:05 +00:00
Vaci Koblizek
c903cbf193
return this network via asConnection()
2020-11-05 17:59:05 +00:00
Vaci Koblizek
4f8c5faef4
tidy up access to hooks
2020-11-05 17:59:05 +00:00
Vaci Koblizek
dc4f8d07b4
dump more message types
2020-11-05 17:59:05 +00:00
Vaci Koblizek
1bf4bfc8a6
add ServerSets
2020-11-05 17:59:05 +00:00
Vaci Koblizek
4bb8f6a51f
remove synchronised modifier from handleMessage
2020-11-05 17:59:05 +00:00
Vaci Koblizek
d6a163990e
fix RpcState tests
2020-11-05 17:59:05 +00:00
Vaci Koblizek
88a8140d70
use Java 14 to compile all modules
2020-11-05 17:59:05 +00:00
Vaci Koblizek
13156f9255
remove extraneous writeTarget method
2020-11-05 17:59:05 +00:00
Vaci Koblizek
cd1fc4c460
make embargo.diembargo final
2020-11-05 17:59:05 +00:00
Vaci Koblizek
e19faf0b81
tidy up cap table in BuilderArena
2020-10-22 15:55:11 +01:00
Vaci Koblizek
caa4441a65
fix local resolver, null caps, and add some doc comments
2020-10-22 15:55:11 +01:00
Vaci Koblizek
8ccfdc1bf6
remove redundent final modifier
2020-10-22 15:55:11 +01:00
Vaci Koblizek
9315c8aaba
null cap test
2020-10-22 15:55:11 +01:00
Vaci Koblizek
011137b23f
remove unused TwoPartyClient.runOnce
2020-10-22 15:55:11 +01:00
Vaci Koblizek
3161e246ae
tidy up TwoPartyVatNetwork
2020-10-22 15:55:11 +01:00
Vaci Koblizek
e21ba577b5
accept default outgoing message size
2020-10-22 15:55:11 +01:00
Vaci Koblizek
633d3ff8cc
remove redundent AnyPointer.getAsCap
2020-10-22 15:55:11 +01:00
Vaci Koblizek
f28b7de494
more message building size hints
2020-10-22 15:55:11 +01:00
Vaci Koblizek
83a4d4dc9e
only tap incoming
2020-10-22 15:55:11 +01:00
Vaci Koblizek
05dc84b675
move more CompFutures to void
2020-10-22 15:55:11 +01:00
Vaci Koblizek
6d082a71b5
use getHook() accessor
2020-10-22 15:55:11 +01:00
Vaci Koblizek
c01228c31c
add tap for dumping rpc messages
2020-10-22 15:55:11 +01:00