Hello,
I saw you fixed #14 so I wanted to test your package and here what I got:
go version
go version devel +d29da2ced72b Mon May 13 10:28:12 2013 +0400 windows/386
Windows 7 x32
Error:
D:\Golibs\os\src\github.com\syndtr\goleveldb\leveldb>go test
fatal error: runtime: cannot map pages in arena address space
goroutine 328 [running]:
[fp=0x16c787c] runtime.throw(0x665341)
c:/Go/src/pkg/runtime/panic.c:473 +0x65
[fp=0x16c789c] runtime.SysMap(0x3ffa0000, 0x100000)
c:/Go/src/pkg/runtime/mem_windows.c:70 +0x78
[fp=0x16c78bc] runtime.MHeap_SysAlloc(0x1730000, 0x100000)
c:/Go/src/pkg/runtime/zmalloc_windows_386.c:360 +0x103
[fp=0x16c78e4] MHeap_Grow(0x1730000, 0x10)
c:/Go/src/pkg/runtime/mheap.c:224 +0x4f
[fp=0x16c7904] MHeap_AllocLocked(0x1730000, 0x4, 0x2b)
c:/Go/src/pkg/runtime/mheap.c:108 +0x286
[fp=0x16c7918] runtime.MHeap_Alloc(0x1730000, 0x4, 0x2b, 0x0, 0x1, ...)
c:/Go/src/pkg/runtime/mheap.c:77 +0x5c
[fp=0x16c7950] MCentral_Grow(0x1b35d4c)
c:/Go/src/pkg/runtime/mcentral.c:203 +0x81
[fp=0x16c7974] runtime.MCentral_AllocList(0x1b35d4c, 0xc, 0x16c7988)
c:/Go/src/pkg/runtime/mcentral.c:47 +0x4c
[fp=0x16c7994] runtime.MCache_Alloc(0x15d0000, 0x2b, 0x1400, 0x1)
c:/Go/src/pkg/runtime/mcache.c:24 +0x72
[fp=0x16c79c4] runtime.mallocgc(0x1400, 0x1, 0x1, 0x1)
c:/Go/src/pkg/runtime/zmalloc_windows_386.c:47 +0xdf
[fp=0x16c79e4] makeslice1(0x5021e0, 0x13e0, 0x13e0, 0x16c7a18)
c:/Go/src/pkg/runtime/slice.c:61 +0x7f
[fp=0x16c7a04] runtime.makeslice(0x5021e0, 0x13e0, 0x0, 0x13e0, 0x0, ...)
c:/Go/src/pkg/runtime/slice.c:34 +0x9c
[fp=0x16c7a58] github.com/syndtr/goleveldb/leveldb/table.(*bInfo).readAll(0x3f9feb80, 0x201818c0, 0x3f9b4a98, 0x20181800, 0x0, ...)
D:/Golibs/os/src/github.com/syndtr/goleveldb/leveldb/table/block.go:66 +0x74
[fp=0x16c7a90] github.com/syndtr/goleveldb/leveldb/table.(*Reader).getBlock(0x3f9bd0f0, 0x3f9feb80, 0x20181440, 0x3f9b4988, 0x0, ...)
D:/Golibs/os/src/github.com/syndtr/goleveldb/leveldb/table/reader.go:171 +0x8e
[fp=0x16c7ac8] github.com/syndtr/goleveldb/leveldb/table.(*Reader).getDataIter(0x3f9bd0f0, 0x3f9feb80, 0x20181440, 0x3f9b4988, 0x0, ...)
D:/Golibs/os/src/github.com/syndtr/goleveldb/leveldb/table/reader.go:202 +0x174
[fp=0x16c7afc] github.com/syndtr/goleveldb/leveldb/table.(*indexIter).Get(0x3f9b19c0, 0x0, 0x0, 0x0, 0x0, ...)
D:/Golibs/os/src/github.com/syndtr/goleveldb/leveldb/table/reader.go:234 +0xd0
[fp=0x16c7b14] github.com/syndtr/goleveldb/leveldb/iterator.(*IndexedIterator).setData(0x3f9b19e0, 0x1)
D:/Golibs/os/src/github.com/syndtr/goleveldb/leveldb/iterator/indexed_iter.go:138
+0x2d
[fp=0x16c7b20] github.com/syndtr/goleveldb/leveldb/iterator.(*IndexedIterator).Next(0x3f9b19e0, 0x3ff9d800)
D:/Golibs/os/src/github.com/syndtr/goleveldb/leveldb/iterator/indexed_iter.go:85 +0x7f
[fp=0x16c7b2c] github.com/syndtr/goleveldb/leveldb/iterator.(*IndexedIterator).Next(0x3f9b17e0, 0x4ba7c0)
D:/Golibs/os/src/github.com/syndtr/goleveldb/leveldb/iterator/indexed_iter.go:84 +0x45
[fp=0x16c7b70] github.com/syndtr/goleveldb/leveldb/iterator.(*MergedIterator).Next(0x3ea83ea0, 0x3fdb03a0)
D:/Golibs/os/src/github.com/syndtr/goleveldb/leveldb/iterator/merged_iter.go:112 +0x124
[fp=0x16c7c1c] github.com/syndtr/goleveldb/leveldb.func┬Ě015(0x0, 0x0)
D:/Golibs/os/src/github.com/syndtr/goleveldb/leveldb/db_compaction.go:247 +0x172
[fp=0x16c7c6c] github.com/syndtr/goleveldb/leveldb.(*DB).transact(0x200bd500, 0x16c7cac)
D:/Golibs/os/src/github.com/syndtr/goleveldb/leveldb/db_compaction.go:136 +0x74
[fp=0x16c7f2c] github.com/syndtr/goleveldb/leveldb.(*DB).doCompaction(0x200bd500, 0x3e997480, 0x16c7f00)
D:/Golibs/os/src/github.com/syndtr/goleveldb/leveldb/db_compaction.go:365 +0x75d
[fp=0x16c7fd4] github.com/syndtr/goleveldb/leveldb.(*DB).compaction(0x200bd500)
D:/Golibs/os/src/github.com/syndtr/goleveldb/leveldb/db_compaction.go:463 +0x17b
[fp=0x16c7fd8] runtime.goexit()
c:/Go/src/pkg/runtime/proc.c:1223
created by github.com/syndtr/goleveldb/leveldb.openDB
D:/Golibs/os/src/github.com/syndtr/goleveldb/leveldb/db.go:72 +0x1e6
goroutine 1 [chan receive]:
testing.RunTests(0x58aa7c, 0x666dc0, 0x3c, 0x3c, 0x1, ...)
c:/Go/src/pkg/testing/testing.go:434 +0x69e
testing.Main(0x58aa7c, 0x666dc0, 0x3c, 0x3c, 0x665a60, ...)
c:/Go/src/pkg/testing/testing.go:365 +0x68
main.main()
C:/Users/Dobek/AppData/Local/Temp/go-build124087311/github.com/syndtr/goleveldb/leveldb/_test/_testmain.go:199 +0x80
goroutine 327 [chan send]:
github.com/syndtr/goleveldb/leveldb.(*DB).flush(0x200bd500, 0x0, 0x0, 0x0)
D:/Golibs/os/src/github.com/syndtr/goleveldb/leveldb/db_write.go:62 +0x176
github.com/syndtr/goleveldb/leveldb.(*DB).Write(0x200bd500, 0x3ea85f20, 0x204cd010, 0x0, 0x0, ...)
D:/Golibs/os/src/github.com/syndtr/goleveldb/leveldb/db_write.go:109 +0x181
github.com/syndtr/goleveldb/leveldb.(*DB).Put(0x200bd500, 0x3ea6ecb0, 0xb, 0xb, 0x3eaa6400, ...)
D:/Golibs/os/src/github.com/syndtr/goleveldb/leveldb/db_write.go:162 +0x84
github.com/syndtr/goleveldb/leveldb.(*dbHarness).put(0x204f5480, 0x3ea6eca0, 0xb, 0x21ba8800, 0x3e8, ...)
D:/Golibs/os/src/github.com/syndtr/goleveldb/leveldb/db_test.go:122 +0xb5
github.com/syndtr/goleveldb/leveldb.TestDb_SparseMerge(0x2012b540)
D:/Golibs/os/src/github.com/syndtr/goleveldb/leveldb/db_test.go:928 +0x165
testing.tRunner(0x2012b540, 0x666f4c)
c:/Go/src/pkg/testing/testing.go:353 +0x86
created by testing.RunTests
c:/Go/src/pkg/testing/testing.go:433 +0x683
goroutine 329 [chan receive]:
github.com/syndtr/goleveldb/leveldb.(*DB).writeJournal(0x200bd500)
D:/Golibs/os/src/github.com/syndtr/goleveldb/leveldb/db_write.go:25 +0x3b
created by github.com/syndtr/goleveldb/leveldb.openDB
D:/Golibs/os/src/github.com/syndtr/goleveldb/leveldb/db.go:73 +0x1fb
goroutine 7 [runnable]:
exit status 2
FAIL github.com/syndtr/goleveldb/leveldb 15.997s
Best regards,
Dobrosław Żybort