profile
viewpoint
If you are wondering where the data of this site comes from, please visit https://api.github.com/users/myxo/events. GitMemory does not store any data, but only uses NGINX to cache data for a period of time. The idea behind GitMemory is simply to give users a better reading experience.
Klimov Nikolay myxo Saint-Petersburg, Russia

ktisha/python2012 5

Python Projects in Computer Science Center (2012)

myxo/remu 1

Remu is a simple telegram bot which can remind you about events

ssyp-ru/ssyp19-ws07 1

Мастерская №7 "ГРАФство"

andrew-boyarshin/ssyp18-ws07-legacy 0

MIGRATED TO https://github.com/ssyp-ru/ssyp18-ws07

myxo/ascii_doom 0

Repo for SSYP'20 workshop

myxo/cloud 0

rep for cloud computing class

myxo/config_sync 0

Repo for config synchronization on different machines

myxo/inline_mess 0

Just a small example why you should be careful with inline functions

myxo/myxo.github.io 0

https://myxo.github.io/

myxo/ofShooter 0

Simple shooter game made with openframeworks

push eventmyxo/config_sync

myxo

commit sha 5429ca2e1af03a4b748767bea3602c602dbe0d91

git: add some commands + set push.default to upstream

view details

push time in a month

push eventmyxo/config_sync

myxo

commit sha 8ded68407e933754288075495dde7c8096cbfd10

Add floaterm and lf integration

view details

push time in a month

startedptzz/lf.vim

started time in a month

IssuesEvent

push eventmyxo/ssyp_db

abramovgeorge

commit sha 62a326eea0805593a91730fac29c4414220a2ab4

Crash in datamodel (#79) * crash fix + minor optimization * GetValue fix

view details

push time in 2 months

PR merged myxo/ssyp_db

Crash in datamodel
+13 -10

0 comment

2 changed files

abramovgeorge

pr closed time in 2 months

delete branch myxo/ssyp_db

delete branch : DataModel9

delete time in 2 months

issue closedmyxo/ssyp_db

Crash in datamodel

Хорошо воспроизводится в generate_table 2021-07-18_11-30-17

closed time in 2 months

myxo

Pull request review commentmyxo/ssyp_db

Crash in datamodel

 class Datamodel : public IDatamodel {             temp += " " + std::to_string(op.key.size());             output.push_back(temp);             journal_->push_back(op);+            journal_size_++;         }         storage_->WriteToJournal(output);         commit_count_++;         return true;     }      bool GetValue(std::string key, std::string& value) {-        auto l_journal = *journal_.get();+        auto l_journal = journal_;         get_value_count_++;-        for (int i = l_journal.size() - 1; i >= 0; i--) {-            if (l_journal[i].key == key) {-                if (l_journal[i].type == Op::Type::Update) {-                    value = l_journal[i].value;+        for (int i = journal_size_ - 1; i >= 0; i--) {+            auto it = l_journal->begin() + i;

вообще запись (*l_journal)[i] думаю была бы понятнее

abramovgeorge

comment created time in 2 months

PullRequestReviewEvent

Pull request review commentmyxo/ssyp_db

Crash in datamodel

 class Datamodel : public IDatamodel {             temp += " " + std::to_string(op.key.size());             output.push_back(temp);             journal_->push_back(op);+            journal_size_++;         }         storage_->WriteToJournal(output);         commit_count_++;         return true;     }      bool GetValue(std::string key, std::string& value) {-        auto l_journal = *journal_.get();+        auto l_journal = journal_;         get_value_count_++;-        for (int i = l_journal.size() - 1; i >= 0; i--) {-            if (l_journal[i].key == key) {-                if (l_journal[i].type == Op::Type::Update) {-                    value = l_journal[i].value;+        for (int i = journal_size_ - 1; i >= 0; i--) {

Вообще говоря тут ещё есть одна проблема. Может получиться так, что

  1. мы получим l_journal
  2. в другом потоке сменится журнал и journal_size_ станет нулем
  3. тут мы начнем цикл от нуля То есть менять журнал и journal_size_ нужно вместе под мьютексом. Но давай уже в другом PR
abramovgeorge

comment created time in 2 months

PullRequestReviewEvent

Pull request review commentmyxo/ssyp_db

Crash in datamodel

 class Datamodel : public IDatamodel {     }      bool GetValue(std::string key, std::string& value) {-        auto l_journal = journal_;+        auto l_journal = *journal_.get();

Ок, я понял свою ошибку. Если буду в будущем давать c++, буду запрещать использование auto =)

Ну то есть ты понимаешь, что ты тут полностью копируешь журнал? Это слишком дорого. Да и проблемы с многопоточностью никуда не исчезли, копировать при изменении объекта просто так тоже нельзя.

abramovgeorge

comment created time in 2 months

PullRequestReviewEvent
PullRequestReviewEvent

issue closedmyxo/ssyp_db

CI: run benchmark on every PR

Нужно запускать бенчмарк для каждого PR и выводить результат в комментарий к PR

blocked by #21

closed time in 2 months

myxo

issue closedmyxo/ssyp_db

DB multithreading

Реализовать возможность работать с базой из нескольких потоков. Нужно сделать, чтобы у базы могло быть множество читателей и только 1 одновременный писатель.

depends on #29

closed time in 2 months

myxo

push eventmyxo/ssyp_db

myxo

commit sha c550955600d9220052231b4be8de56a75884c11f

Fix waiting all work done in benchmark

view details

push time in 2 months

delete branch myxo/ssyp_db

delete branch : fix_gen_table

delete time in 2 months

PR merged myxo/ssyp_db

Fix waiting all work done in benchmark
+9 -2

0 comment

1 changed file

myxo

pr closed time in 2 months

push eventmyxo/ssyp_db

myxo

commit sha 6ce97100dd6b7b9fa48be1e5c7adfed9fec279a6

Fix waiting all work done in benchmark

view details

push time in 2 months

PR opened myxo/ssyp_db

Fix waiting all work done in benchmark
+8 -2

0 comment

1 changed file

pr created time in 2 months

create barnchmyxo/ssyp_db

branch : fix_gen_table

created branch time in 2 months

PullRequestReviewEvent

issue openedmyxo/ssyp_db

Crash in datamodel

Хорошо воспроизводится в generate_table 2021-07-18_11-30-17

created time in 2 months

push eventmyxo/ssyp_db

myxo

commit sha 67e4ade14c336b195d7782a0622625975f2e9b69

Add reading values to gen_table

view details

push time in 2 months

delete branch myxo/ssyp_db

delete branch : gen_table_update

delete time in 2 months

PR merged myxo/ssyp_db

Add reading values to gen_table
+40 -9

0 comment

1 changed file

myxo

pr closed time in 2 months

PR opened myxo/ssyp_db

Add reading values to gen_table
+40 -9

0 comment

1 changed file

pr created time in 2 months

create barnchmyxo/ssyp_db

branch : gen_table_update

created branch time in 2 months