- Jul 03, 2017
-
-
Konstantin Osipov authored
-
- Jun 30, 2017
-
-
Konstantin Osipov authored
* use per-index statistics * remove step_count as it is no longer maintained * add statistics for txw, mem, and index overall
-
alyapunov authored
Old iterator has several problems: - restoration system is too complex and might cause several reads from disk of the same statements. - applying of upserts works in direct way (squash all upserts and apply them to terminal statement) and the code doesn't leave a change to optimize it. Implement iterator for full-key EQ case that fixes problems above.
-
alyapunov authored
There is a version member in vy_index that is incremented on each modification of mem list and range tree. Split it to two members that correspond to mem list and range tree accordingly. It is needed for more precise tracking of changes in iterators.
-
- Jun 29, 2017
-
-
Konstantin Osipov authored
-
Vladimir Davydov authored
If a vylog record doesn't get flushed to disk due to an error, objects it refers to (index->key_def, range->begin and range->end) may get destroyed, resulting in a crash. To avoid that, we must copy those objects to vylog buffer. Closes #2532
-
Konstantin Osipov authored
-
Vladimir Davydov authored
- Remove tx and cursor latencies as they are useless - they actually account how long a tx/cursor was open, not latencies. - Remove vy_stat->get_latency as it doesn't account latency of select, besides we now have per index read latency. - Remove vy_stat->dumped_statements and dump_total as these statistics are reported per index as well. - VY_STAT_TX_OPS is currently unused (always 0). Let's use it for accounting the total number of statements committed in tx instead of vy_stat->write_count.
-
Vladimir Davydov authored
index.info() is supposed to show index stats, not options. box.space.<space_name>.index.<index_name>.options looks like a better place for reporting index options. Needed for #1662
-
Vladimir Davydov authored
This patch adds 'latency' field to index.info. It shows the latency of reads from the index. The latency is computed as 99-percentile of all delays incurred by vy_read_iterator_next(). Needed for #1662
-
Vladimir Davydov authored
Replace box.info.vinyl().performance.upsert_{squashed,applied} with per index index.info().upsert.{squashed,applied}. Needed for #1662
-
Vladimir Davydov authored
Add the following counters to index.info: lookup # number of lookups (read iter start) get # number of statements read (read iter next) rows bytes put # number of statements written rows bytes Needed for #1662
-
Eugine Blikh authored
closes gh-2516
-
Konstantin Osipov authored
-
- Jun 27, 2017
-
-
Konstantin Osipov authored
-
Vladimir Davydov authored
This patch adds the following counters to index.info: txw count # number of statements in the TX write set rows bytes iterator lookup # number of lookups in the TX write set get # number of statements returned by the iterator rows bytes Needed for #1662
-
Vladimir Davydov authored
This patch adds the cache section to index.info with the following counters in it: cache rows # number of tuples in the cache bytes # cache memory size lookup # lookups in the cache get # reads from the cache rows bytes put # write to the cache rows bytes invalidate # overwrites in the cache rows bytes evict # evictions due to memory quota rows bytes Needed for #1662
-
Vladimir Davydov authored
Using vy_quota, which was implemented to support watermarking, throttling, timeouts, for accounting cached tuples is an overkill. Replace it with mem_used and mem_quota counters.
-
Vladimir Davydov authored
This patch adds the following counters to the disk section index.info: dump # dump statistics: count # number of invocations in # number of input statements rows bytes out # number of output statements rows bytes compact # compaction statistics: count # number of invocations in # number of input statements rows bytes out # number of output statements rows bytes Needed for #1662
-
Vladimir Davydov authored
Replace box.info.vinyl().performance.iterator.{run,mem} global counters with the following per index counters: memory iterator lookup # number of lookups in the memory tree get # number of statements returned by mem iterator rows bytes disk iterator lookup # number of lookups in the page index get # number of statements returned by run iterator rows bytes bloom # number of times bloom filter hit # allowed to avoid a disk read miss # failed to prevent a disk read read # number of statements actually read from disk rows bytes bytes_compressed pages Needed for #1662
-
Vladimir Davydov authored
It's useless - it only checks that certain counters are present, but doesn't give a damn about what they show. At the same time, I have to update its output every time I modify vinyl statistics, which I'm doing pretty often these days. So let's ditch it - I'll rewrite it from scratch after I'm done reworking vinyl statistics.
-
Konstantin Osipov authored
gh-2520: add comments explaining the test case for gh-2520 (upsert caching).
-
Vladislav Shpilevoy authored
Use a tuple cache to turn an UPSERT in the PREPARE, if the cache contains a tuple with the exact same key. The UPSERT can be applied to the cached tuples, because 1. The cache always contains only REPLACE statements; 2. The cache always contains only newest statements. Closes #2520
-
Vladislav Shpilevoy authored
When an UPSERT is prepared, it can use a cached statement to be turned into REPLACE. But now it doesn't use the cache. Test for #2520
-
Konstantin Osipov authored
Minor style fixes to improve code readability. In scope of gh-2529.
-
- Jun 26, 2017
-
-
Georgy Kirichenko authored
Do not unlock endpoint until a flushing async message is sent and do not destroy endpoint until last pipe release endpoint lock. Fixed #2529
-
Konstantin Osipov authored
* use name_len and sz consistently across all patches working with names and lengths * do not delete user_def for a system user during init * use calloc(), since we're using it for index_def as well.
-
Vladislav Shpilevoy authored
-
Vladislav Shpilevoy authored
Need for #944
-
Vladimir Davydov authored
-
Vladimir Davydov authored
In scope of gh-2547 (lost of space access control lists during truncate).
-
Konstantin Osipov authored
* use an existing index_def from the new space instead. IMO makes the code a bit easier to follow. In scope of work on gh-944 (variable length object names).
-
Konstantin Osipov authored
* we use name_len for name length in most of the places, len is a widespread abbreviation for length * add comments
-
Vladislav Shpilevoy authored
Needed for #944
-
Vladislav Shpilevoy authored
-
- Jun 23, 2017
-
-
Roman Tsisyk authored
-
Roman Tsisyk authored
Malformed MessagePack can cause `int k` counter overflow inside mp_check()/mp_next(). See https://github.com/tarantool/nginx_upstream_module/issues/79 See https://github.com/rtsisyk/msgpuck/issues/16 Closes #2540
-
- Jun 22, 2017
-
-
Konstantin Osipov authored
-
Vladislav Shpilevoy authored
-
Konstantin Osipov authored
-