Age | Commit message (Collapse) | Author |
|
underlying stream was empty.
|
|
servers that run for weeks or more.
|
|
|
|
isn't production yet, and nids wasn't in widespread use, so this should be ok
to change.
|
|
|
|
while are welcome to provide progress info with some builtin functions.
The Bu::Archive class now throws an exception if reading is interrupted by EOS
|
|
|
|
|
|
remove function. memcpy can't do overlapping memory, changed it to use memmove.
|
|
|
|
command line parameters now, I would like to also add an automatic paramter that
would switch it to a computer-readable output mode for use in a larger testing
framework.
|
|
|
|
|
|
Fixed a bug in Socket, it wasn't closing the socket in all exception cases.
Also fixed a few things in the unit test framework, going to add some more
helpers soon.
|
|
things that should be added. A few of them still need to be implemented. I
know that truncate for Bu::File is possible on windows, I've used it before, but
hell if I can find it. Myriad also needs the setSize function completed.
|
|
|
|
|
|
|
|
actually checks. novel, eh?
|
|
|
|
I've written a new program that basically does the same thing, only it's much
more clever, and does many more of the translations and conversions better,
including the #line directives. Also, I dropped nids, we don't need it anymore.
But now I'm ready to write some serious tests for myriad.
|
|
|
|
Unfortunately this breaks some programs that accessed the client internal
buffer directly. Overall it's much, much more efficient, so it's worth it,
maybe we'll find a good workaround later.
|
|
|
|
that to the build file or something...
|
|
called compat. I've updated the linux and windows builds and it looks pretty
good. I also added a config.h file which we have to edit by hand until I can
work on build some more. Linux File operations now use 64 bit mode, windows
can't, or at least, I don't feel like researching it right now.
|
|
crater the server system. Lameness...
|
|
|
|
|
|
cache stores to throw.
|
|
maybe would be better to call an example than a fully fledged storage strategy.
It just names files based on your keys. It's very slow, and very wasteful, and
shouldn't be used long-term in most normal cache systems.
|
|
...I mean brilliant as in cool.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
important fixes for real-life use of the system.
|
|
longer returns anything, that's fine, it's in a class, but it also is protected
now. That doesn't really effect child classes much, they can make run public,
but I reccomend protected to avoid confusion.
|
|
The CsvWriter now writes csv. It understands both excel formatting and c-style,
which I made up myself (it's just c-style escape sequences).
Sha1 is converted to work with the CryptoHash API and it does indeed work.
|
|
adding all pre-allocated blocks to the header stream instead of just allocating
them. This caused some oddness, as you can probably imagine.
There's a good way to go before Myriad is as cool as it could be, but it's
already much more efficient and all around better than nids. I'll have to write
a program to convert nids cache stores to myriad cache stores, but that should
be fairly minor.
|
|
Nids and Myriad pretty much share an API. However, there seems to be a bug in
Myriad when a Myriad file is created and filled with data immediately, the
header stream is mis-linking one of the blocks again.
|
|
Myriad seems to work. I have to run it through a few more paces, and there are
some known corner cases that I may just disallow, such as too-small block sizes.
Beyond a little more testing, it's ready for production. I may switch some of
my cache tests to using it now.
|
|
probably tweak the header init.
|
|
a hashtable was filled, then some items were removed, then enough items were
added to trigger a rehash.
|
|
without knowing everything about it's keytype and whatnot. Minor fixes to the
csv end-of-line handling.
|
|
way, way, way more problems than it solved. A number of libbu++ tests were
inacurate because of it, there were problems in several other programs, and
there may be more that have problems we haven't found yet because of this.
This will most likely cause complitaion errors, especially in places we didn't
expect, where strings were being stored into or passed as integers and the like.
In cases where you were just testing a string, just call the "isSet()" function,
which is functionally equivellent to the old bool cast operator.
|
|
|
|
onCloseConnection on each client before cleaning it up, allowing for smooth
cleanup. Later we may want to add a nicer version with a timeout for pending
data to be transmitted and the like. This one is pretty harsh.
|