Open issues

fix helgrind regresiosn with Test10_MutlipleThreadsReadingOneUpdateUsingSynchonizedContainer_ (was Remove support for Iterator patching (or make optional))
STK-535
Synchonization class op-> use
STK-158
Allow type mapping details for structs to contain alias records (with special argument flag)
STK-95
Streams misc, throw if would bloc, isDataAvail, timeouts
STK-80
test/doc problem with Sequence<X> x; x[3] = 4;
STK-77
Containers MultiMap
STK-49
Writeup definition of Minimal threadsafty and how obehct read/write threadsayt
STK-37
_SafeReadWriteRepAccessor DTOR makeiterator reace?
STK-21
Support ETAG along with ConditionalGet (maybe also last modified with conditional get)
STK-689
Change the file path APIs in IO::FileSystem to use path (and new ToPath() function).
STK-685
overwrite a container (Collection_LInkedList) while it has a live iterator causes assertion failure/crash
STK-649
Containers performance - rewrite AddAll() to pull the accessor out of the loop and just call add on each item
STK-645
hang during valgrind of Test39 - thread safety
STK-629
Possibly lose container patching (so can lose track iterator owner) - and only patch iterator passed to remove call
STK-615
Consider mechanism to automatically prepend 'while' clauses to exception messages.
STK-604
ProcessRunner::RunInBackground and Run () timeout thread clealnups
STK-585
Sequence operator[] assign - fData[row * fDimensions.fColumns + col] = value; - silently fails
STK-582
Redo Character/String using char32_t - not wchar_t - but preserving ability for c_str to return wchar_t* and not too much cost
STK-534
options arguments - DataExcahnge::Compression::ZLib (reader and writer)
STK-523
DataExcahnge::Compression:ZLib::Writer
STK-521
Compression;:ZLib::Reader streams must use AssertExternallySynchronizedLock
STK-520
redo windows makefiles so they use make and not msbuild
STK-509
Restructure/cleanup RpeeatingElement/LiustOfObjects - so bugs like #504 less likely
STK-505
Lose shared_ptr<> with SignalHandlerRegistry::SafeSignalsManager::Rep_
STK-467
sBookkeepingThread_ in Logger is NOT threadsafe!!
STK-463
Stroika makefiles should support/use make depend
STK-460
Major rework of OpenSSL API needed - esp for example EncodeAES
STK-458
Create regression tests cases for PKCS5_PBKDF2_HMAC
STK-457
imporve abort/wait for done thread code - exponential backoff
STK-434
Iterable::Select<> produces a new iterable that shaddowns the original, but without upping ref count
STK-430
stroika windows build bug - rm -rf device or resoruce busy bug
STK-429
Consider directly integrating with Swagger
STK-416
Probably move ODBC client to DataExchange?
STK-414
add ability to add new named values to Config - so we can add stuff like "IncludeMongoDB" - in projects that USE stroika but not part of stroika
STK-413
Redo STABILITY markings as A-F, interafce stabilituy, impelmeation-relability.
STK-340
REDO TextInputStreamBinaryAdapter::IRep_ to use codecvt_utf8 (so can be incremental)
STK-333
Make sure we give good error message when we try building Stroika with VS2k12
STK-328
Deal with the hundreds of @todo items in Stroika source
STK-300
TextWriter (and TextReader) should take optional codepage param and maybe overload taking locale
STK-274
Lose remaining perl build scripts
STK-271
WHY (fpersentscanidscache is Synchonzied<DiscreteDisjointRange>>) As<vector<>> doesn’t work with its iterable but As<Sequecen, and then its As<vector>>> does work,
STK-250
bidirectional iterator working in stroika with sequence
STK-242
Lose qStroika_Foundation_Memory_SharedByValue_DefaultToThreadsafeEnvelope_
STK-228
Synchonized<> ins support of shared_lock/shared_mutex
STK-204
qStroika_Foundation_Traveral_IteratorRepHoldsIterableOwnerSharedPtr_
STK-187
debug why (overloads issue string/variantvalue)
STK-164
Fix ProcessRunner to throw (on unix) of called process returns bad status (maybe optional?)
STK-148
Stroika sequence needs to support random access iterator
STK-144
SmatSeekableStream? or MakeSeekableStream???
STK-140
actually implemente KeyedCollection, and add regression tests for KeyedCollection/SortedKeyedCollection
STK-133
issue 1 of 515

fix helgrind regresiosn with Test10_MutlipleThreadsReadingOneUpdateUsingSynchonizedContainer_ (was Remove support for Iterator patching (or make optional))

Description

We CURRENTLY have a new bug (not a regression but a new regression test) - where we get helgrind failures.

regtest 37

Test9_MutlipleThreadsReadingUnsynchonizedContainer_
Test10_MutlipleThreadsReadingOneUpdateUsingSynchonizedContainer_

Discussed with KDJ/Sterling

I think the plan is to make an OPTIONAL param to containers like Sequnece_Array - if iterators are autosafe-patching.

THEN - its the responsabity of the callers to assure iterator acessed syncrhonzed with the owning container (patch but not lcoking other than debug::assertexternalylsynconized)

But most of the stroika code - loses the patching logic. So runs FASTER (and more bug free)

Maybe include in DEBUG mode maintaining the linked list (or something similar) to DETECT bugs and assert out. Maybe on iteartor have a CHANGE COUNT. And then to assert in iterator that they cannot be used after a change to the owning container!

Conssider i = s.begin();
s.append([x]);
i++; // assert ciz s 'changed'.

ALSO - make Remove() method on Sequnce (and maybe others) return an Iterator to next item.

Status

Assignee

Lewis Pringle

Reporter

Lewis Pringle

Labels

None

Components

Priority

Highest
Configure