10014 Commits

Author SHA1 Message Date
Nik Bougalis
34e85ccb62 Refactor treatment of Ledger:
All handling of Ledger in shared_ptr is modified to
use a const managed object when the context requires
immutable semantics.
2016-03-03 13:02:13 -08:00
Nik Bougalis
77a4218a9e Set version to 0.31.0-b11 2016-02-29 13:46:37 -05:00
seelabs
d8ee487c19 Fix underflow issue for XRP:
In some cases multiplying or dividing STAmounts gave incorrect results.

This happens when:

1) The result should be rounded up
2) The STAmount represents a native value (XRP)
3) The rounded up value was less than one drop

In this case, the result was zero, instead of one drop. This could
cause funded offers to be removed as unfunded.
2016-02-29 13:42:55 -05:00
seelabs
3605bf1f60 Chrono fixes for VS Update 2 2016-02-29 13:42:55 -05:00
Nik Bougalis
d3b43bfa37 Report slow stop times only in release builds 2016-02-29 13:42:55 -05:00
Nik Bougalis
bf6079797f Simplify logging:
* Construct Logs with the correct severity
* Remove deprecatedLogs and log squelching support
* Use debugJournal for AutoSocket logging
2016-02-29 13:42:55 -05:00
Scott Schurr
6366f62f11 Cleanups in beast::Journal:
The Journal API is affected.  There are two uses for the
Journal::Severity enum:

 o It is used to declare a threshold which log messages must meet
   in order to be logged.

 o It declares the current logging level which will be compared
   to the threshold.

Those uses that affect the threshold are now named threshold()
rather than severity() to make the uses easier to distinguish.

Additionally, Journal no longer carries a Severity variable.
All handling of the threshold() is now delegated to the
Journal::Sink.

Sinks are no longer constructed with a default threshold of
kWarning; their threshold must be passed in on construction.
2016-02-29 13:42:55 -05:00
Nik Bougalis
427c33dbd7 Set version to 0.30.1-hf2 0.30.1-hf2 2016-02-26 15:58:09 -08:00
seelabs
675cbb72a6 Fix underflow issue for XRP:
When specifying that a result should be rounded up,
the code rounded up to a value suitable for a non-xrp
amount. When called with an xrp amount, if that rounded-up
value was less than one drop, the code rounded down to zero.

This could cause funded offers to be removed as unfunded.
2016-02-26 15:57:39 -08:00
Vinnie Falco
f846b1a88f Set version to 0.31.0-b10 2016-02-25 13:57:10 -05:00
Vinnie Falco
4bfcd12897 Disable Rules assignment in Ledger::setup:
This is a temporary fix for a thread-unsafe access.
2016-02-25 13:57:04 -05:00
Nik Bougalis
d736232142 Pathfinding cleanup:
* Remove unused code
* Do not use `pointer` and `ref` type aliases
* Misc. cleanups
2016-02-25 13:38:46 -05:00
Scott Schurr
9cb02028ed Increase JLOG usage. 2016-02-25 13:38:45 -05:00
Scott Schurr
0703441ee7 Extend View.cpp unit test coverage. 2016-02-25 13:34:58 -05:00
Vinnie Falco
2c3128d9ba Ignore error on socket shutdown 2016-02-25 13:34:57 -05:00
Vinnie Falco
7837eed21b Disable Rules assignment in Ledger::setup:
This is a temporary fix for a thread-unsafe access.
2016-02-22 14:40:44 -05:00
Nik Bougalis
db092449f9 Set version to 0.31.0-b9 2016-02-18 13:54:15 -08:00
Nik Bougalis
d321b446db Remove tracking by public key in Overlay 2016-02-18 13:54:10 -08:00
Nik Bougalis
78ce7a08c0 Return correct error code during unfunded offer cross (RIPD-1082):
When placing an offer that sells XRP, if the account's balance was
low enough that paying the transaction fee would drop the balance
below the reserve, the transaction should return tecUNFUNDED_OFFER.

The existing implementation returned a tesSUCCESS instead. Although
the net result is the same as far as the transaction's effects are
concerned (the offer is not placed on the books and the transaction
fee is charged) the incorrect result code makes deciphering metadata
difficult.

Add unit test that verifies the new behavior.
2016-02-18 13:54:10 -08:00
Nik Bougalis
15adb73a13 Unit tests for offer creation:
* Test whether offers which either already below the reserve (or
  would go below during processing) can execute if they cross.
* Test the "Fill or Kill" and "Immediate or Cancel" flags.
2016-02-18 13:54:10 -08:00
Scott Schurr
f15cc6c4f6 Document feature RPC command in --help. 2016-02-17 16:33:02 -08:00
seelabs
61e6e5694c Add virtual destructor to Logs 2016-02-17 16:33:02 -08:00
Edward Hennis
66bc0bb424 Copy rules from parent ledger 2016-02-17 16:33:02 -08:00
David Schwartz
25589bacea Ensure fee change transactions have a unique transaction ID
Include the ledger sequence number in fee change transactions to ensure
each such transaction has a unique transaction ID.

We tolerate the absence of a ledger sequence in fee change transactions so
that past fee change transactions remain parseable. Since no live amendment
transactions have yet happened, there is no need to tolerate an absent
ledger sequence there.
2016-02-17 16:33:02 -08:00
JoelKatz
d721d35a2d Update SQLite from 3.8.11.1 to 3.11.0 2016-02-17 16:29:00 -08:00
Vinnie Falco
ba84fc2c77 Set version to 0.31.0-b8 2016-02-11 18:43:06 -05:00
Vinnie Falco
0f7dbc7bc0 Fix Server race conditions:
Class io_list manages children that perform asynchronous
I/O operations. The treatment of close and destruction is
refactored to fix race conditions during exit.
2016-02-11 18:42:34 -05:00
Vinnie Falco
137dd351b8 Refactor Server:
* Remove HTTP namespace
* Rename connection classes
* Mark Server test automatic
* Build server sources in classic
2016-02-11 18:42:33 -05:00
Vinnie Falco
ba38bfad9d Server deadlock fixes 2016-02-11 18:42:33 -05:00
Vinnie Falco
be71e8afa2 Get X-Forwarded-For from Session request 2016-02-11 18:42:33 -05:00
Vinnie Falco
de416adadd Disable WebSocket logging 2016-02-11 18:42:32 -05:00
Vinnie Falco
1fda99ba82 Add suite::this_suite 2016-02-11 18:42:32 -05:00
Vinnie Falco
9f5b58c8ab Fix short_read test race/deadlock 2016-02-11 18:42:31 -05:00
Vinnie Falco
8c11d24454 Reinforce Env Application log severity 2016-02-11 18:42:30 -05:00
Vinnie Falco
924b6b663e Increase severity on Stoppable logging 2016-02-11 18:42:30 -05:00
Nik Bougalis
688452d971 Fix OptionalProxy<T> equality comparison 2016-02-11 18:41:42 -05:00
Scott Schurr
2f94e16359 Add SignerList to account_info response (RIPD-1061):
The caller of the account_info RPC command can optionally
specify that they want the account's SignerList returned by
adding the argument:

"signer_lists": "true"

The returned SignerList is in an array.  This leaves us room to
support multiple signer lists on an account in the future without
changing the syntax of the result.

The command-line version of account_info does not support the new
option.
2016-02-11 18:41:03 -05:00
Miguel Portilla
fbf736f169 Improved reporting for delivered_amount:
* Determine tx success from metadata result.
* Report delivered_amount for legacy account_tx queries.
2016-02-11 18:39:12 -05:00
Vinnie Falco
f0624581d1 Set version to 0.30.1-hf1 0.30.1-hf1 2016-02-11 18:19:31 -05:00
Vinnie Falco
cb23352a35 Revert "Set version to 0.30.1-hf1"
This reverts commit 9fea06ad84.
2016-02-11 18:19:08 -05:00
Vinnie Falco
9fea06ad84 Set version to 0.30.1-hf1 2016-02-11 15:48:32 -05:00
Miguel Portilla
2beeb9a293 Improved reporting for delivered_amount:
* Determine tx success from metadata result.
* Report delivered_amount for legacy account_tx queries.
2016-02-11 15:47:40 -05:00
Nik Bougalis
1e92ac3cf5 Set version to 0.31.0-b7 2016-02-08 15:50:12 -08:00
Scott Schurr
acaf91a2f7 Add AccountLinesRPC unit tests. 2016-02-08 15:50:02 -08:00
seelabs
41125a0a34 Support for clang specific boost and protobuf dirs:
Clang does not understand gcc 5's new ABI. On linux systems
that default to the new ABI (such as ubuntu 15.10), building
with clang requires using C++ libraries built with the the old
gcc ABI.

When building with the clang protobuf lib, a common error is to
load the gcc protobuf library at run time. When set, PROTOBUF_ROOT
is added to rpath to make sure the correct lib is loaded.

Adds a script to install clang and download and build boost and
protobuf with boost.
2016-02-08 15:50:02 -08:00
Nik Bougalis
35ed095dbf Cleanup ledger fetching 2016-02-08 15:50:02 -08:00
Nik Bougalis
ce31e26f58 Enable amendment support 2016-02-08 15:47:57 -08:00
Nik Bougalis
2b640532f2 Merge remote-tracking branch 'upstream/release' into develop 2016-02-08 15:45:10 -08:00
Nik Bougalis
c717006c44 Set version to 0.30.1 0.30.1 2016-02-08 15:37:02 -08:00
Nik Bougalis
fd33d693c4 Merge remote-tracking branch 'upstream/master' 2016-02-08 15:36:04 -08:00