summaryrefslogtreecommitdiff
path: root/src/include/wt_internal.h
Commit message (Collapse)AuthorAgeFilesLines
* WT-2215 Use 32-bit LSN file and offsets. Set LSNs as a 64-bit value.Susan LoVerso2016-01-251-0/+2
|
* Upgrade copyright notices from 2015 to 2016.Keith Bostic2016-01-011-1/+1
|
* WT-1315. Support statistics on join cursors.Don Anderson2015-11-171-0/+4
| | | | | | | | | | | | | | | | | Statistics for these are a bit different than for a data source or a connection: 1) The statistics are simple (currently only 3), but range over sets of indices, so traversing the stats is a two level operation. Added a private callback API to advance to the next index when the stats have been exhausted. 2) cursors are used as single threaded operations, so arrays of stats is to avoid thread conflicts is not needed. Minor change: the stats_desc callback changed to return an int, and added an arg to provide some context. In the join cursor case, the returned desc is not a static string, it needs to be created and managed.
* WT-1315. Added support for join cursors:Don Anderson2015-11-031-0/+8
| | | | | | | | | | | | - "join:" URI handling added to WT_SESSION::open_cursor, added WT_SESSION::join. - Added support for in-memory bloom filters. - Minor fix to cur_dump_close CURSOR_API_CALL. - Some refactoring in __wt_{curindex,curtable}_get_value() to allow them to be called internally. - Use new macro JOINABLE_CURSOR_API_CALL() instead of CURSOR_API_CALL() to trap illegal calls to joined cursor. - __wt_curtable_open now takes an owning cursor arg. - Added __wt_struct_unpack_size() and __wt_struct_repack()
* WT-2131 Add a new fair-lock type.Alex Gorrod2015-09-281-0/+2
| | | | | That is a simple ticket based lock implementation. Switch the page lock from a read/write lock to a fair lock.
* WT-2093 Use the C99 bool type to clarify when functions return true/false.Michael Cahill2015-09-081-0/+1
|
* Rename "skip" objects to "supd" objects, the skip list is no longer a listKeith Bostic2015-08-271-2/+2
| | | | | of skipped WT_UPDATEs, it's also a list of WT_UPDATEs that will be written into the lookaside table.
* Merge branch 'develop' into log-slot-revampSusan LoVerso2015-08-241-7/+12
|\ | | | | | | | | | | | | | | | | | | Conflicts: dist/s_define.list src/include/log.h src/include/stat.h src/include/wiredtiger.in src/log/log_slot.c src/support/stat.c
| * Fix a bug introduced in 705ff3f; discard duplicate structure declarations soKeith Bostic2015-08-241-2/+0
| |
| * Update auto-generated typedefs.Keith Bostic2015-08-221-0/+12
| |
| * Merge pull request #2124 from wiredtiger/dhandle-barrierMichael Cahill2015-08-191-5/+2
| |\ | | | | | | SERVER-19989 Add a write barrier before handles become public
| | * Add write barriers to the TAILQ insert macros to ensure we never insertKeith Bostic2015-08-181-5/+2
| | | | | | | | | | | | a partially-built structure onto a list.
| * | WT-2029, improve scalability of statisticsKeith Bostic2015-08-151-2/+0
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of using per-thread arrays of counters (see #2102), use arrays of statistics structures. I started with the scalable_stats branch, so this incorporates most of the commits on that branch, but the diff is against the develop branch to make it easier to review. Specifically, this includes a9675d0: There are only 3 statistics we maintain atomically: the count of open cursors and the split-stash bytes and object counts. Move them to WT_CONNECTION_IMPL fields, and copy them into the statistics on demand, this allows us to remove support for atomically maintaining statistics values. And 6bda287: Get rid of the WT_CONN_{STAT,STAT_GET,STAT_SET} macros, instead maintain a few additional fields in the WT_CONNECTION_IMPL structure (checkpoint min/max, recent and total time). And 7590930: Use a prime number of buckets rather than assuming a good hash (Reference Sedgewick, Algorithms in C, "Hash Functions"). And 63a2082: I'm seeing a roughly 20% advantage of using a loop to clear the stats values, vs. a memset to clear the whole padded chunk, and I'd rather err on the side of writing fewer cache lines, anyway. Additionally: Now we have arrays of statistics structures, separate out each statistic value's description into a separate array, a struct of strings. We could access it directly, and maybe should, but I'm using a function all at the moment. Now the statistic's descriptions are separate from the statistics values, we no longer need macros to access the fields, in general we can simply use the stat structure reference and the field name and set the int64_t directly. This includes removal of the WT_STATS typedef. Change the LSM code to not maintain a local data-source statistics structure in each LSM-tree structure -- that allows us to remove all of the macros to update a single stats structure, and I don't think it complicates things that much. The changes to the LSM statistics code should be closely reviewed.
* | WT-2031 Make log compare an inlined function to use local variables soSusan LoVerso2015-08-101-0/+1
|/ | | | that we are not reading the data location twice.
* SERVER-19340 Avoid type aliasing in the random number generator.Michael Cahill2015-07-271-0/+2
|
* Merge branch 'develop' into named-snapshotsMichael Cahill2015-05-131-2/+4
|\ | | | | | | | | | | | | | | Conflicts: dist/api_data.py src/config/config_def.c src/include/config.h src/txn/txn.c
| * Merge branch 'develop' into encryption-apiSusan LoVerso2015-04-131-2/+0
| |\ | | | | | | | | | | | | Conflicts: src/config/config_def.c
| | * Remove the pthread-mutex-logging spinlock type, it's no longer used.Keith Bostic2015-04-131-2/+0
| | | | | | | | | | | | | | | Initialize MSVC spinlocks, don't destroy spinlocks that were never initialized.
| * | Added keyed_encryptor list off of named_encryptor, andDon Anderson2015-04-101-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | customize is only called when there is a new unique encryptor. Renamed password to be secretkey in API, improved API doc. Fixed multi-tenant encrypt example accordingly: tenants are declared via keyid, and there only needs to be one encryptor added. Refs #1822.
| * | Merge branch 'develop' into encryption-apiSusan LoVerso2015-04-011-3/+0
| |\ \ | | |/ | | | | | | | | | Conflicts: src/log/log.c
| * | Merge branch 'develop' into encryption-apiSusan LoVerso2015-04-011-0/+1
| |\ \
| * | | Initial plumbing for encryption api. #1822Susan LoVerso2015-03-261-0/+2
| | | |
* | | | Merge branch 'develop' into named-snapshotsAlex Gorrod2015-04-091-3/+1
|\ \ \ \ | | |_|/ | |/| | | | | | | | | | Conflicts: src/config/config_def.c
| * | | I can't find any pthreads_XXX_np functions (which is good, because theKeith Bostic2015-04-011-3/+0
| | |/ | |/| | | | | | | "np" stands for "non-portable"); remove optional include of pthread_np.h.
| * | Integrate Sasha's vectorized search code.Keith Bostic2015-03-231-0/+1
| |/
* | Add an initial implementation of named, in-memory snapshots. This ↵Michael Cahill2015-04-011-0/+2
|/ | | | implementation is mainly intended to flesh out the API. It won't cope well with very large numbers of active snapshots, ignores some misuses of the interface and doesn't deal at all with the problem of converting snapshots to on-disk checkpoints.
* Enable attach supportMark Benvenuto2015-01-271-1/+3
|
* Defer the cache full check from begin_transaction until the first operation ↵Michael Cahill2015-01-141-1/+1
| | | | | | that requires an ID or snapshot. refs SERVER-16790
* Copyright notices: add MongoDB, update to 2015.Keith Bostic2015-01-041-0/+1
|
* Merge branch 'develop' into custom-extractorsMichael Cahill2014-10-221-3/+2
|\ | | | | | | | | Conflicts: src/txn/txn_recover.c
| * Merge pull request #1284 from markbenvenuto/pthread_typedefKeith Bostic2014-10-191-3/+2
| |\ | | | | | | Introduce new typedefs for pthread typedefs in platform agnostic code
| | * Introduce new typedefs for pthread typedefs in platform agnostic codeMark Benvenuto2014-10-151-3/+2
| | |
* | | Merge branch 'develop' into custom-extractorsMichael Cahill2014-10-171-0/+3
|\ \ \ | |/ /
| * | Port all examples, most tests, and wtperf to WindowsMark Benvenuto2014-10-161-0/+3
| |/ | | | | | | Added windows_shim to emulate most functions
* | Merge branch 'develop' into custom-extractorsMichael Cahill2014-10-161-1/+23
|\ \ | |/
| * add config validation for Windows configMark Benvenuto2014-10-131-4/+0
| |
| * MSVC & Clang Warning CleanupMark Benvenuto2014-10-101-0/+2
| | | | | | | | FAllocate & FTruncate fixes
| * Guard include of os_windows.h, include os_windows.h before misc.h,Keith Bostic2014-10-091-1/+4
| | | | | | | | get Windows #defines in early.
| * Style script.Keith Bostic2014-10-091-1/+1
| |
| * Initial Windows PortMark Benvenuto2014-10-081-1/+22
| |
* | More implementation of the custom extractor API. Still working on ↵Michael Cahill2014-10-091-0/+2
|/ | | | | | generating plans and key formats between index creation and open. refs #1199
* Simplify gcc.h, don't repeat the GCC atomic builtins, just use one version.Keith Bostic2014-10-041-0/+5
| | | | | | Break hardware.h up into gcc.h and lint.h (hardware.h is still there, but it's mostly empty). Remove need for gcc.h from various benchmarking/test programs.
* Forward declarations of enumerated types is a gcc extension, we don'tKeith Bostic2014-09-011-2/+0
| | | | need to do it anyway.
* Merge branch 'develop' into lsm-shared-workersAlex Gorrod2014-08-271-0/+2
|\ | | | | | | | | | | | | | | | | Conflicts: dist/api_data.py src/config/config_def.c src/docs/upgrading.dox src/include/flags.h src/include/wiredtiger.in
| * Merge branch 'develop' into dynamic-evict-workersAlex Gorrod2014-08-051-4/+4
| |\ | | | | | | | | | | | | | | | | | | Conflicts: src/btree/bt_evict.c src/conn/conn_cache.c src/include/cache.h
| * | Start and stop eviction worker threads based on demand.Alex Gorrod2014-07-311-0/+2
| | | | | | | | | | | | Refs #1116
* | | Merge branch 'develop' into lsm-shared-workersAlex Gorrod2014-08-061-2/+2
|\ \ \ | | |/ | |/| | | | | | | There are a bunch of manual merges in here - don't skip this commit if looking for oddities.
| * | Add log cursors. #1106Susan LoVerso2014-07-151-2/+2
| |/
* | Start shifting to having shared worker threads for LSM trees.Alex Gorrod2014-07-171-0/+4
|/ | | | [#1113]
* Cleanup based on Alex's feedback.Michael Cahill2014-07-011-2/+2
| | | | refs #1082