- 04 Sep, 2018 4 commits
-
-
Geoff Simmons authored
-
Geoff Simmons authored
-
Geoff Simmons authored
-
Geoff Simmons authored
-
- 03 Sep, 2018 2 commits
-
-
Geoff Simmons authored
-
Geoff Simmons authored
-
- 02 Sep, 2018 5 commits
-
-
Geoff Simmons authored
-
Geoff Simmons authored
-
Geoff Simmons authored
-
Geoff Simmons authored
-
Geoff Simmons authored
Setting tx levels within a group is not implemented yet. The code lacks error checking, and is presently rather dreadful. But tests pass.
-
- 31 Aug, 2018 1 commit
-
-
Geoff Simmons authored
-
- 30 Aug, 2018 2 commits
-
-
Geoff Simmons authored
-
Geoff Simmons authored
strconv.Atoi(string([]byte)) causes the temporary string to escape to the heap. This way we stay with a byte slice that does not escape.
-
- 29 Aug, 2018 13 commits
-
-
Geoff Simmons authored
-
Geoff Simmons authored
-
Geoff Simmons authored
-
Geoff Simmons authored
-
Geoff Simmons authored
-
Geoff Simmons authored
-
Geoff Simmons authored
-
Geoff Simmons authored
-
Geoff Simmons authored
-
Geoff Simmons authored
-
Geoff Simmons authored
-
Geoff Simmons authored
-
Geoff Simmons authored
VSLQ_Dispatch() is a powerful tool for the C API, but the restrictions and overhead involved with the C/Go bridge make it too unwieldy to use. Too much synchronization becomes necessary for a low-level API like this. The cgocall overhead becomes excessive. It seems to be difficult, perhaps impossible, to implement callbacks without creating many objects on the Go heap. Since many objects from the log are created in hot code, this puts excessive pressure on the Go garbage collector. This version uses low-level log read operations, excusively VSL_Next() and related functions. The C/Go bridge is much smaller and simpler. It should be possible to create the objects for log data on the Go stack. The Cursor and Query interfaces reflect the underlying VSL interface more faithfully. Distinct Cursors are safe for concurrent reads (as for struct VSL_cursor from the VSL interface). This means that grouping and VSL queries will have to re-implemented in Go.
-
- 26 Aug, 2018 4 commits
-
-
Geoff Simmons authored
-
Geoff Simmons authored
-
Geoff Simmons authored
-
Geoff Simmons authored
-
- 25 Aug, 2018 1 commit
-
-
Geoff Simmons authored
-
- 24 Aug, 2018 4 commits
-
-
Geoff Simmons authored
-
Geoff Simmons authored
-
Geoff Simmons authored
-
Geoff Simmons authored
-
- 21 Aug, 2018 4 commits
-
-
Geoff Simmons authored
-
Geoff Simmons authored
-
Geoff Simmons authored
-
Geoff Simmons authored
Use an atomically incremented uint64 as the key for global maps. Random key and sync.Maps are no longer necessary.
-