History log of /4.5.1-MP3/forestdb/ (Results 1 - 25 of 1277)
Revision (<<< Hide revision tags) (Show revision tags >>>)Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
0d24efb912-Aug-2016 Sundar Sridharan <sundar.sridharan@gmail.com>

[BP] MB-20499: Distinguish seek_to_min/max from regular seek

SET : a b1 b2 b3 c
ITERATOR: [b - c] skip max key
SEEK : c (expected ITR_FAIL, returned result b3)
Reason sinc

[BP] MB-20499: Distinguish seek_to_min/max from regular seek

SET : a b1 b2 b3 c
ITERATOR: [b - c] skip max key
SEEK : c (expected ITR_FAIL, returned result b3)
Reason since seek was overloaded by seek_to_max and seek_to_min
b3 was returned even in regular seek()

Change-Id: I0b98c92ca6494637400e6d3c835741f07ac5eeb4
Reviewed-on: http://review.couchbase.org/66748
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Well-Formed: buildbot <build@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

b10aec3303-Aug-2016 abhinavdangeti <abhinav@couchbase.com>

[BP] MB-20040: Acquire last_hdr_bid before move_docs phase of compaction

+ Acquire the last_hdr_bid value before invoking fdb_compact_move_docs
during fdb_compact_file, to avoid fdb_co

[BP] MB-20040: Acquire last_hdr_bid before move_docs phase of compaction

+ Acquire the last_hdr_bid value before invoking fdb_compact_move_docs
during fdb_compact_file, to avoid fdb_compact_move_docs (which
invokes fdb_get_file_info, and there by fdb_sync_db_header) from
shifting the last_hdr_bid, causing delta compaction to fail to move
some of the documents to the new file.
+ Fix mvcc_functional_test: snapshot_concurrent_compaction_test to
complete in a finite amount of time. This test sets a compaction
callback that writes items as part of the callback, meaning
fdb_compact_move_delta which invokes the compaction_callback fn,
will always find delta docs to move on every iteration.

(Reviewed on: http://review.couchbase.org/#/c/66459/)

Change-Id: I0af184c296d922a0afadc426ecb31c75b18cdf97
Reviewed-on: http://review.couchbase.org/66472
Well-Formed: buildbot <build@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

fee2123926-Jul-2016 Sundar Sridharan <sundar.sridharan@gmail.com>

[BP] MB-20284:Auto commit on close iff file had new data

If there was no data written calling fdb_commit unncessarily
causes file size to grow when auto_commit option is enabled.

[BP] MB-20284:Auto commit on close iff file had new data

If there was no data written calling fdb_commit unncessarily
causes file size to grow when auto_commit option is enabled.

Change-Id: I7fa98f4bf082874b7b8a024e9d65b0a56d2a55b8
Reviewed-on: http://review.couchbase.org/66241
Well-Formed: buildbot <build@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

7e4d980618-Jul-2016 Sundar Sridharan <sundar.sridharan@gmail.com>

[BP] MB-20112: Only let first open restore wal

When multiple threads call fdb_open() we can have multiple
attempts at _fdb_restore_wal() which can insert items into
the WAL even thou

[BP] MB-20112: Only let first open restore wal

When multiple threads call fdb_open() we can have multiple
attempts at _fdb_restore_wal() which can insert items into
the WAL even though they have been reflected in main index
Ignore those WAL items who offset matches with one in trie
Test case where sequence iterator out of sync with key iterator
This change also prevents many DB headers from polluting the
buffercache, thereby reducing buffercache usage.
(Reviewed-on: http://review.couchbase.org/65906)

Change-Id: Ife1cdc592118f7942314892902db429a15fdc37f
Reviewed-on: http://review.couchbase.org/66045
Well-Formed: buildbot <build@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

88f49f7321-Jul-2016 abhinavdangeti <abhinav@couchbase.com>

[BP] MB-20219: Stick to heap allocation just for windows

- Move raw key allocation from heap to stack for any
non-windows platform.

- Originally this allocation was always made

[BP] MB-20219: Stick to heap allocation just for windows

- Move raw key allocation from heap to stack for any
non-windows platform.

- Originally this allocation was always made on the
stack, but was moved to the heap because of stack
overflow issues seen during testing just on the
windows platform (MB-19744).
- However the heap allocation has introduced a
performance regression because of all the malloc/free
overhead.
- So, until a good solution (like maintaining and
reusing a simple global buffer pool rather than
allocating space for every hbtrie::find/insert
operation) is implemented, the heap allocation will
be made only for windows.

(Reviewed on: http://review.couchbase.org/#/c/66027/)

Change-Id: I5cde1b90074e398e13103b38c6f00a01c66c2bdf
Reviewed-on: http://review.couchbase.org/66029
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: abhinav dangeti <abhinav@couchbase.com>

show more ...

7f95330420-Jul-2016 abhinavdangeti <abhinav@couchbase.com>

[BP] MB-20196: Validate iterator seek range for deleted keys

(Reviewed on: http://review.couchbase.org/#/c/65974/)

Change-Id: I35affa14cffffa1d78aa80bfcb503c952b7f0366
Reviewed-

[BP] MB-20196: Validate iterator seek range for deleted keys

(Reviewed on: http://review.couchbase.org/#/c/65974/)

Change-Id: I35affa14cffffa1d78aa80bfcb503c952b7f0366
Reviewed-on: http://review.couchbase.org/65978
Well-Formed: buildbot <build@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

3f1b12bb19-Jul-2016 Jung-Sang Ahn <jungsang.ahn@gmail.com>

MB-20111 Reset 'lastbid' if BMP revnum has been changed

- If superblock's BMP revnum has been changed, 'lastbid' block might
be reused so that we should reset it.

Change-Id: I70

MB-20111 Reset 'lastbid' if BMP revnum has been changed

- If superblock's BMP revnum has been changed, 'lastbid' block might
be reused so that we should reset it.

Change-Id: I709f162225c836a5fa3109bb54912efe1630d198
Reviewed-on: http://review.couchbase.org/65948
Well-Formed: buildbot <build@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

709b3fd615-Jul-2016 Jung-Sang Ahn <jungsang.ahn@gmail.com>

[BP] MB-20112 Disable log callback during compaction recovery

- As partially compacted file is not a normal file, various kinds of
errors can happen, but they don't need to be reported.

[BP] MB-20112 Disable log callback during compaction recovery

- As partially compacted file is not a normal file, various kinds of
errors can happen, but they don't need to be reported.

Change-Id: I4b04b75b004b1c36fe9dc912d0ddb463c2fa1bf1
Reviewed-on: http://review.couchbase.org/65834
Well-Formed: buildbot <build@couchbase.com>
Reviewed-by: abhinav dangeti <abhinav@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

5f874bbf09-Jul-2016 Sundar Sridharan <sundar.sridharan@gmail.com>

[BP] MB-20076: use txn_id instead of pointer for comparisons

The following sequence can cause an item of an committed transaction
to be falsely detected as belonging to an active transac

[BP] MB-20076: use txn_id instead of pointer for comparisons

The following sequence can cause an item of an committed transaction
to be falsely detected as belonging to an active transaction
1. transactionA created at memory address P1
2. Key k1 inserted into transactionA, k1 points to P1 to remember it
3. transactionA commits, k1 still points to P1
4. transactionA memory address P1 is freed
5. transaction B begins and is given same address P1
6. snapshot created & begins to copy all WAL items
7. snapshot skips over key k1 because it finds address P1 belongs to an
open transaction

Change-Id: Ie7eff23ece49ac537b5410194723b7c269093f0d
Reviewed-on: http://review.couchbase.org/65651
Well-Formed: buildbot <build@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

93e1be8521-Jun-2016 Trond Norbye <trond.norbye@gmail.com>

MB-19390: Use jemalloc on windows

Change-Id: I39df6ec9597f45d5a69533e0d2ccb28ef57183da
Reviewed-on: http://review.couchbase.org/65103
Well-Formed: buildbot <build@couchbase.com>

MB-19390: Use jemalloc on windows

Change-Id: I39df6ec9597f45d5a69533e0d2ccb28ef57183da
Reviewed-on: http://review.couchbase.org/65103
Well-Formed: buildbot <build@couchbase.com>
Reviewed-by: Will Gardner <will.gardner@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

d632be9715-Jun-2016 Sundar Sridharan <sundar.sridharan@gmail.com>

MB-19941: Validate iterator range for end/start key

Test Case: Insert: keys doc-01 to doc-99
iterator (startkey=doc-24, endkey=doc-29b) endkey does not exist
seek_to_max should retur

MB-19941: Validate iterator range for end/start key

Test Case: Insert: keys doc-01 to doc-99
iterator (startkey=doc-24, endkey=doc-29b) endkey does not exist
seek_to_max should return doc-29 but returns doc-30
seek_to_min with doc-24b should return doc-25 but returns doc-24
due to missing range validation

Change-Id: I14302306f55bf0dafe0860c503e04bbda8493c12
Reviewed-on: http://review.couchbase.org/64966
Well-Formed: buildbot <build@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

42913b8613-Jun-2016 abhinavdangeti <abhinav@couchbase.com>

MB-19743: Fix cleanup in in_memory_snapshot_cleanup_test

+ Ensure that docs are deleted in a clean manner within
the test to avoid any heap corruption within the test.
+ Remove unu

MB-19743: Fix cleanup in in_memory_snapshot_cleanup_test

+ Ensure that docs are deleted in a clean manner within
the test to avoid any heap corruption within the test.
+ Remove unused values within the test case.
+ Reduce unnecessary stack usage.

Change-Id: I590f34a33cb912ba82fe42b7bd987c676ac05be2
Reviewed-on: http://review.couchbase.org/64434
Well-Formed: buildbot <build@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

dcd5953525-May-2016 abhinavdangeti <abhinav@couchbase.com>

MB-19744: Move allocation of fdb_docs on to heap

To avoid stack exhaustion, move allocation of the
list of fdb_docs on to the heap.

Change-Id: Ie131a53a13757480631dbb893db81ded4

MB-19744: Move allocation of fdb_docs on to heap

To avoid stack exhaustion, move allocation of the
list of fdb_docs on to the heap.

Change-Id: Ie131a53a13757480631dbb893db81ded472a2f3b
Reviewed-on: http://review.couchbase.org/64428
Well-Formed: buildbot <build@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

7af74b2125-May-2016 abhinavdangeti <abhinav@couchbase.com>

MB-19744: Reduce stack allocations in hbtrie_insert path

Use heap to allocate memory instead.

Change-Id: I014ff2d8a5444effbff884a00f580c6c10625521
Reviewed-on: http://review.cou

MB-19744: Reduce stack allocations in hbtrie_insert path

Use heap to allocate memory instead.

Change-Id: I014ff2d8a5444effbff884a00f580c6c10625521
Reviewed-on: http://review.couchbase.org/64419
Well-Formed: buildbot <build@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

b9e5d3c209-Jun-2016 Jung-Sang Ahn <jungsang.ahn@gmail.com>

MB-19845 Update root handle on fdb_kvs_create or fdb_kvs_remove

- At the end of fdb_kvs_create() or fdb_kvs_remove(), a new commit
header is appended, but root handle's 'last_hdr_bid' is

MB-19845 Update root handle on fdb_kvs_create or fdb_kvs_remove

- At the end of fdb_kvs_create() or fdb_kvs_remove(), a new commit
header is appended, but root handle's 'last_hdr_bid' is not updated
correctly.

- If file is closed without commit, then superblock is still pointing
to the previous commit header, as a result KVS creation or removal
will be ignored.

- To address this issue, update root handle's 'last_hdr_bid' properly.

Change-Id: Ida71139ed91373e0b4a84b3f61b86d27ab58b822
Reviewed-on: http://review.couchbase.org/64849
Well-Formed: buildbot <build@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

1026552026-May-2016 abhinavdangeti <abhinav@couchbase.com>

MB-19745: Handle windows scenario for reading a block at EOF

- When Linux's pread is run at an offset for a block
starting at the end of file, pread succeeds and returns 0.
- With

MB-19745: Handle windows scenario for reading a block at EOF

- When Linux's pread is run at an offset for a block
starting at the end of file, pread succeeds and returns 0.
- With Windows however, on the exact same scenario, ReadFile
fails, and sets errno to ENOENT. ENOENT is mapped to
FDB_RESULT_NO_SUCH_FILE, which is a case that isn't
handled when attempting to read a header block.
- Fixing this issue by handling the case when reading of a
block at EOF is attempted.
- Also do not use _F64 to print a uint32_t value, as on
windows, faulty numbers are seen in logs.

Change-Id: Ifb0718feb9afab489d1d7f1299c9d03a2620eabf
Reviewed-on: http://review.couchbase.org/64506
Reviewed-by: Sundararaman Sridharan <sundar@couchbase.com>
Well-Formed: buildbot <build@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Reviewed-by: Jung-Sang Ahn <jungsang.ahn@gmail.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

05d8ab7d08-Jun-2016 Sundar Sridharan <sundar.sridharan@gmail.com>

MB-19830: Ignore WRITE_FAIL for parallel fdb_open()+fdb_kvs_open()

fdb_kvs_open() issues commit to persist kv store name. This can
interfere with fdb_open()'s functions like btreeblk_end

MB-19830: Ignore WRITE_FAIL for parallel fdb_open()+fdb_kvs_open()

fdb_kvs_open() issues commit to persist kv store name. This can
interfere with fdb_open()'s functions like btreeblk_end() since
some blocks are now immutable due to the commit from other thread.

Change-Id: Id09673f89ef937095dbbc935cd37a1ed9e13deb6
Reviewed-on: http://review.couchbase.org/64807
Well-Formed: buildbot <build@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

c81e41fe25-May-2016 abhinavdangeti <abhinav@couchbase.com>

MB-19741: Set winoffs's offset and offsetHigh correctly

In the test case: invalid_get_byoffset_test(), within
scenario 4, set the new offset for a file read operation
correctly for w

MB-19741: Set winoffs's offset and offsetHigh correctly

In the test case: invalid_get_byoffset_test(), within
scenario 4, set the new offset for a file read operation
correctly for windows.

Change-Id: I0bfcd12f28308c42c558d726e6d95451b52b83eb
Reviewed-on: http://review.couchbase.org/64432
Well-Formed: buildbot <build@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

839ee43226-May-2016 Jung-Sang Ahn <jungsang.ahn@gmail.com>

MB-19739 Call fdb_gather_stale_blocks() before fixing header BID

- While moving existing commit header to new file in compact_upto(),
fdb_gather_stale_blocks() is called after we fixing

MB-19739 Call fdb_gather_stale_blocks() before fixing header BID

- While moving existing commit header to new file in compact_upto(),
fdb_gather_stale_blocks() is called after we fixing header BID
(i.e., new_handle.last_hdr_bid). fdb_gather_stale_blocks() will
write system doc starting from 'last_hdr_bid', so the actual commit
header BID will differ to 'last_hdr_bid'. It will cause checksum error
during the next compact_upto() call.

- To address this issue, just switch the calling sequence.

Change-Id: I380165f2167ace34a9f67258b250f72a400d86d5
Reviewed-on: http://review.couchbase.org/64439
Well-Formed: buildbot <build@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

0e2e9e2e26-May-2016 Jung-Sang Ahn <jungsang.ahn@gmail.com>

MB-19739 Test case to reproduce

- Calling compact_upto() twice causes wrong checksum error due to
incorrect last_wal_flush_hdr_bid value.

Change-Id: Id63a283b8bb489f6445964e7dd9

MB-19739 Test case to reproduce

- Calling compact_upto() twice causes wrong checksum error due to
incorrect last_wal_flush_hdr_bid value.

Change-Id: Id63a283b8bb489f6445964e7dd95a727720b432f
Reviewed-on: http://review.couchbase.org/64438
Well-Formed: buildbot <build@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

70de35ed25-May-2016 Jung-Sang Ahn <jungsang.ahn@gmail.com>

MB-19734 Do not append delta size, # deleted docs for 4.1.0 KVS header

- Those header fields should not be included in the system doc for KVS
header when the file version is older than M

MB-19734 Do not append delta size, # deleted docs for 4.1.0 KVS header

- Those header fields should not be included in the system doc for KVS
header when the file version is older than MAGIC_001.

Change-Id: Icf30ba8f39727a1b7b291e9c0e2c8f466c11f48c
Reviewed-on: http://review.couchbase.org/64380
Well-Formed: buildbot <build@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

c36a0ed025-May-2016 Jung-Sang Ahn <jungsang.ahn@gmail.com>

MB-19727 Do not add # deleted docs field for 4.1.0 commit header

- # deleted docs field should be added only when the file version
is equal to or greater than MAGIC_001.

- Super

MB-19727 Do not add # deleted docs field for 4.1.0 commit header

- # deleted docs field should be added only when the file version
is equal to or greater than MAGIC_001.

- Superblock error message might be a false alarm during the upgrade
so that added an excuse comment.

Change-Id: Ieb48d0fe05be8ad8fb17795fe9c906ffd8a913da
Reviewed-on: http://review.couchbase.org/64369
Well-Formed: buildbot <build@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

Revision tags: v1.2
05b1f48723-May-2016 Sundar Sridharan <sundar.sridharan@gmail.com>

MB-19694: Compare highest doc seqnum with persisted file value

To keep sequence numbers monotonically increasing always check
with the persisted value in either the KVS doc or DB header

MB-19694: Compare highest doc seqnum with persisted file value

To keep sequence numbers monotonically increasing always check
with the persisted value in either the KVS doc or DB header (default kvs)
If the handle->seqnum is not correctly maintained, then we can
potentially lose some updates to the sequence numbers.

Change-Id: I8b19927213407a936476460ac0c384a0ff362f65
Reviewed-on: http://review.couchbase.org/64301
Well-Formed: buildbot <build@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

0d07449a19-May-2016 Jung-Sang Ahn <jungsang.ahn@gmail.com>

MB-19665 Do not reclaim stale blocks corresponding to rollback point

- Rollback API appends a new commit header which re-points to the
old index nodes, which can be reclaimed although th

MB-19665 Do not reclaim stale blocks corresponding to rollback point

- Rollback API appends a new commit header which re-points to the
old index nodes, which can be reclaimed although the header is still
active.

- To avoid this issue, we remove stale-tree entries since the
rollback point so that those old index nodes are not classified as
stale blocks anymore.

- However, this approach will cause some stale block leakage (due to
the blocks written after the rollback point). It needs to be
addressed in the future.

Change-Id: I86feae1527d8bdc1d7c597b926b878b566a79b06
Reviewed-on: http://review.couchbase.org/64197
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

969f2cc618-May-2016 Chiyoung Seo <chiyoung.seo@gmail.com>

MB-19665 Init superblock's reserved bitmap correctly in _sb_read_given_no()

Change-Id: I0331f7eade28a71a8ba2432596ed105cf45e37d5
Reviewed-on: http://review.couchbase.org/64185
Review

MB-19665 Init superblock's reserved bitmap correctly in _sb_read_given_no()

Change-Id: I0331f7eade28a71a8ba2432596ed105cf45e37d5
Reviewed-on: http://review.couchbase.org/64185
Reviewed-by: Jung-Sang Ahn <jungsang.ahn@gmail.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

12345678910>>...52