1
0
forked from GitHub/gf-core
Commit Graph

46 Commits

Author SHA1 Message Date
Krasimir Angelov
8960e00e26 speed up booting by implementing realloc+padovan 2022-02-09 10:36:42 +01:00
Krasimir Angelov
9513c968db fix the sanity checking for valid revisions 2022-02-02 11:49:16 +01:00
Krasimir Angelov
00f857559d restore the sharing of sequences. Shrinks the grammar by ~45% 2022-01-08 19:49:42 +01:00
Krasimir Angelov
cd2c6aa32a cleanup transient revisions only after a transaction is opened 2021-12-29 14:52:21 +01:00
Krasimir Angelov
dca6611d84 synchronize the mmap sizes between processes 2021-12-29 11:16:21 +01:00
krangelov
4792665241 back to storing rwlocks in a separate file to avoid moving the lock 2021-12-22 22:19:56 +01:00
krangelov
db92bcfff6 fix for MacOS 2021-11-16 09:53:41 +01:00
krangelov
4a62ea02f4 destroy the r/w lock if there is no shared file 2021-11-16 09:48:50 +01:00
krangelov
c26f3b3cd5 an attempt to fix the failure on MacOS 2021-11-16 09:36:26 +01:00
krangelov
f5e6c695a7 make r/w lock shared only if there is a shared file as well 2021-11-16 08:53:22 +01:00
krangelov
c80ef3549c fix error reporting when the r/w lock is created 2021-11-16 08:47:07 +01:00
krangelov
e0b93a37e2 fix the compilation on Windows again 2021-11-15 13:39:47 +01:00
krangelov
c1690ffa77 the r/w lock is now in the database itself 2021-11-15 13:13:00 +01:00
krangelov
92ecc8cc1d finished porting to Windows 2021-11-13 05:40:38 +01:00
krangelov
9804d993e4 remove the dependency to pthread on Windows 2021-11-10 17:27:45 +01:00
krangelov
68fd5460f4 fix cleanup after exceptions in PgfDB::PgfDB 2021-11-10 17:10:31 +01:00
krangelov
c806ce2d26 minimal changes to make the runtime compilable on Windows 2021-11-10 15:52:02 +01:00
krangelov
befb61b0e3 first steps towards porting to Windows 2021-11-09 19:08:49 +01:00
krangelov
309a16d471 reference counting for concrete syntaxes 2021-11-03 10:48:20 +01:00
krangelov
157574763f now we use inter-process locking 2021-10-25 19:14:25 +02:00
krangelov
1413c273cc API for adding concrete syntaxes. Garbage collection to be fixed! 2021-10-21 19:18:14 +02:00
John J. Camilleri
ac93f2dd10 Don't call msync in PgfDB::sync on macOS 2021-10-18 13:54:13 +02:00
John J. Camilleri
c9b668a583 Fix compilation with macOS mmap/malloc workaround. Add Python (macOS) to CI. 2021-10-15 17:34:19 +02:00
John J. Camilleri
8cd0bb5ec1 Use malloc/realloc on macOS when fd < 0... but doesn't compile 2021-10-15 15:24:15 +02:00
krangelov
45ee985fda safe error reporting in case of mmap failure 2021-10-13 21:33:55 +02:00
John J. Camilleri
ead1160a75 More changes to compile on macOS (incomplete) 2021-10-12 15:29:29 +02:00
John J. Camilleri
1401a6d209 Fix (most) macOS compilation problems 2021-10-12 10:46:39 +02:00
krangelov
9863f32d05 fix a memory leak 2021-09-28 09:53:40 +02:00
krangelov
e11e775a96 merge pgf_free and pgf_free_revision since otherwise we cannot control the finalizers in Haskell 2021-09-22 13:21:07 +02:00
krangelov
e41feae82a database synchronization only on commit 2021-09-17 16:43:54 +02:00
krangelov
a7f00a4e84 detect and report an attempt to load non .ngf file in readNGF 2021-09-12 08:11:10 +02:00
krangelov
6cfa250b28 PgfDB::sync is now moved to the desctructor for DB_scope 2021-09-11 18:20:28 +02:00
krangelov
4e443374de restore the thread local declarations that were accidentally removed 2021-09-11 18:06:28 +02:00
krangelov
ae0a6aa6b6 clean up everything after revision is not needed anymore. 2021-09-11 16:33:22 +02:00
krangelov
1b09e7293f implemented pgf_free_revision 2021-09-10 11:39:54 +02:00
krangelov
f7aad0c0e0 added createCategory, dropCategory 2021-09-09 17:33:25 +02:00
krangelov
bcc33af36b added support for branches and explicit transaction commit 2021-09-08 14:09:23 +02:00
krangelov
2e846cdf59 added safeguard to ensure that PgfRevision is an actual object 2021-09-08 09:17:12 +02:00
krangelov
a843ddba55 better error handling which always reports the right file name 2021-09-07 15:54:27 +02:00
krangelov
4ea4450481 mark methods in PgfDB as internal 2021-09-07 09:45:30 +02:00
krangelov
9cea2cc70e change the API to allow different grammar revisions 2021-09-06 15:49:39 +02:00
krangelov
4655c2663a fix the memory allocator 2021-09-03 19:57:53 +02:00
krangelov
b28e891a6b a type annotated version of marshaller/unmarshaller 2021-08-26 17:27:34 +02:00
krangelov
3578355bd0 fix computing the size of the mapped area 2021-08-12 14:04:35 +02:00
krangelov
82ce76a2ce fix allocation to ensure that top is properly aligned from the beginning 2021-08-12 10:40:33 +02:00
krangelov
91f183ca6a move the C sources to the subfolder pgf again for backwards compatibility 2021-08-08 18:29:16 +02:00