https://github.com/ilovenooodles/concurrency-control
Tugas Besar II Manajemen Basis Data 2022
https://github.com/ilovenooodles/concurrency-control
concurrency-control optimistic-concurrency-control simple-locking-protocol
Last synced: 3 months ago
JSON representation
Tugas Besar II Manajemen Basis Data 2022
- Host: GitHub
- URL: https://github.com/ilovenooodles/concurrency-control
- Owner: IloveNooodles
- Created: 2022-11-20T05:51:44.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2022-12-05T16:06:04.000Z (over 2 years ago)
- Last Synced: 2025-02-06T08:44:30.788Z (5 months ago)
- Topics: concurrency-control, optimistic-concurrency-control, simple-locking-protocol
- Language: Python
- Homepage:
- Size: 29.3 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Tugas Besar II Manajemen Basis Data 2022 - Concurrency Control
Concurrency control simulation is a simulation of how DBMS works. There are consist of two protocls, Optimistic Concurrency Control and Simple locking using only exclusive locks.
Made with love by
| Name | NIM |
| :----------------------------: | :------: |
| Petrus Elison Manurung | 13518110 |
| Muhammad Akyas David Al Aleey | 13520011 |
| Muhammad Garebaldhie ER Rahman | 13520029 |
| Fawwaz Anugrah Wiradhika D | 13520086 |
| Farrel Ahmad | 13520110 |## Requirement list and Installation
1. Install python [here](https://www.python.org/)
2. clone the repository using `git clone https://github.com/IloveNooodles/concurrency-control`## Usage
This program uses argparse so you can read the full command here
```
usage: main.py [-h] {simple,optimistic} [pathfile]Concurrency Control Protocol Implementation
positional arguments:
{simple,optimistic} choose concurrency control protocol, s[imple] and o[ptimistic]
[pathfile] path file for the testcase or inputoptions:
-h, --help show this help message and exit
```To run the program you can specify the path and protocol you want to use for example `python main.py simple test/tc1.txt` to run `tc1.txt` with simple locking
In simple mode The program will ask prompt if you want to enable the deadlock prevention
```
>> Starting simple locking protocol
>> Do you want to activate deadlock prevention? (y/n)
```## Valid input
Valid input are
- `C[number]`
- `R[number](alphabet)`
- `W[number](alphabet)`Here are example of valid input
`R1(X); R2(Y); R1(Y); C1; C2`After each action must be separated with ; and but no ; in the EOF