{"id":16660480,"url":"https://github.com/killme2008/ewok","last_synced_at":"2026-04-02T02:44:06.970Z","repository":{"id":1950541,"uuid":"2880466","full_name":"killme2008/ewok","owner":"killme2008","description":"A  high available BTM transaction logs journal using bookkeeper.","archived":false,"fork":false,"pushed_at":"2014-09-23T10:01:25.000Z","size":178,"stargazers_count":10,"open_issues_count":0,"forks_count":3,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-23T20:43:46.856Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/killme2008.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"licenses.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2011-11-30T04:05:47.000Z","updated_at":"2025-02-06T04:18:33.000Z","dependencies_parsed_at":"2022-08-29T14:01:51.797Z","dependency_job_id":null,"html_url":"https://github.com/killme2008/ewok","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/killme2008%2Fewok","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/killme2008%2Fewok/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/killme2008%2Fewok/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/killme2008%2Fewok/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/killme2008","download_url":"https://codeload.github.com/killme2008/ewok/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248090431,"owners_count":21046091,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-12T10:29:26.067Z","updated_at":"2026-04-02T02:44:06.930Z","avatar_url":"https://github.com/killme2008.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Introduction\nA  high available BTM transaction logs journal using bookkeeper.\nIt's still under heavy development.\n\nBTM: http://docs.codehaus.org/display/BTM/Home\n\nBookKeeper:  http://zookeeper.apache.org/bookkeeper/svn.html\n\n# License\n\nBTM is LGPL license based,so is ewok.\n\n\n#Internal\n\nEwok use zookeeper to store every TransactionManager's ledger id:\n\n\t /ewok\n\t\t/app1\n\t\t\t\t/192-168-1-100 -- 0\t\t[ledger id]\n\t\t\t\t\t /ownership\t            [Ephemeral node]\n\t\t\t\t/192-168-1-101 -- 1\n\t\t\t\t  \t /ownership\n\t\t/app2\n\t\t\t\t/192-168-1-135 -- 99\n\t\t\t\t/192-168-1-136 -- 100\n\t\t\t\t\t/ownership\n\t\t\t\t......\n\nAnd ewok use bookkeeper to write transaction logs,it writes a TransactionLogRecord as an entry to ledger.If it write failed,it just create a new ledger and copy all dangling transactions to the new ledger.\n\n#Configuration\n\nEwok use a config file named ewok-config.properties to configure it's properties:\n\n\t #zookeepere servers\n\t ewok.zkServers=localhost:2181\n\t #special server id for this tm,default is local address\n\t ewok.serverId=test\n\t #zookeeper namespace\n\t ewok.zkRoot=ewok\n\t #zookeeper session timeout\n\t ewok.zkSessionTimeout=5000\n\t #A path to load other TM's logs,default is null\n\t ewok.loadZkPath=\n\t #Ledger ensemble size\n\t ewok.ensembleSize=1\n\t #Ledger quorum size\n\t ewok.quorumSize=1\n\t #Ledger password\n\t ewok.password=ewok\n\t #Batch size to read entries from ledger\n\t ewok.cursorBatchSize=5\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkillme2008%2Fewok","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkillme2008%2Fewok","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkillme2008%2Fewok/lists"}