News:

SMF - Just Installed!

Main Menu

Recent posts

#1
Noutăţi / Re: Utilizare aplicatie online
Last post by Serghei - Apr 11, 2024, 10:23 AM
Corect, soluția ar putea funcționa DACĂ și NUMAI DACĂ utilizatorii se asigură că IceFact rulează pe un singur device la un moment dat.

Ok... în versiunea următoare o sa adăugăm un parametru de genul "-d /director/baze/de/date" și vedem ce-o ieși.
#2
Noutăţi / Re: Utilizare aplicatie online
Last post by macmac - Apr 11, 2024, 09:39 AM
Quote from: Serghei on Apr 10, 2024, 10:34 AMIn momentul tranzactiei (dintre BEGIN si COMMIT), baza de date este intr-o stare inconsistenta.
Cred ca ne invartim un pic in jurul cozii. :) Inconsistenta poate exista doar din prisma unei alte instante a aplicatiei care ar accesa-o in acea stare.
Clientul de sync lucreaza pe fisier doar cand un mecanism care detecteaza modificari pe el (i.e. inotify) ii semnaleaza acest lucru. Daca avem o singura instanta de aplicatie deschisa, doar scrierile ei in fisierul sqlite va genera sincronizari spre server. Care sunt foarte rapide si pot fi considerate instantanee. Practic serverul, apoi si ceilalti clienti ai storage-ului vor primi imediat si ei modificarile.
Quote from: Serghei on Apr 10, 2024, 10:34 AMDaca sync-ul incepe exact in mijlocul unei tranzactii, dezastrul este garantat.
Dezastru pentru cine? Daca nimeni altcineva nu are aplicatia deschisa (ceea ce am zis ca ar trebui sa te asiguri oricum cand folosesti un astfel de setup, pentru a asigura integritatea datelor), continutul fisierului dintr-un moment dat e irelevant. Aplicatia va executa COMMIT-ul, tranzactia se va finaliza si starea finala a fisierului va fi impinsa in stocarea shared, iar ceilalti clienti ai stocarii o vor primi si ei.
#3
Erori / Re: icesoft v1.8.4 - denumire ...
Last post by Serghei - Apr 10, 2024, 10:41 AM
IceFact are un mecanism intern de sincronizare NTP (la pornirea programului), posibil sa intre in conflict cu NTP-ul sistemului daca deriva ceasului calculatorului este mare si clientul NTP de pe sistem intervine des.
#4
Noutăţi / Re: Utilizare aplicatie online
Last post by Serghei - Apr 10, 2024, 10:34 AM
Era bine sa fie atat de simplu, din pacate mecanismul la baze de date relationale este ceva mai complicat.

Scrierea in baza de date se face in mai multi pasi, in cadrul unei tranzactii. In momentul tranzactiei (dintre BEGIN si COMMIT), baza de date este intr-o stare inconsistenta. Daca sync-ul incepe exact in mijlocul unei tranzactii, dezastrul este garantat.

Din acest motiv nu este recomandat ca bazele de date sa fie copiate direct sau sa fie pe fileshare.

Mai mult, va fi imposibil de lucrat cu mai multe device-uri simultan, pentru ca se vor desincroniza numerele de ordine, vor aparea conflicte etc.
#5
Noutăţi / Re: Utilizare aplicatie online
Last post by macmac - Apr 10, 2024, 10:16 AM
Fisierul sqlite nu poate fi corupt de catre sync in sine, pentru ca sync-ul va "impinge" tot fisierul.
Singura problema este atunci cand sunt pornite instante multiple ale aplicatiei / bazei de date in acelasi timp. Fisierul intr-adevar poate fi suprascris de oricare dintre instante si se pot pierde date.
Dar cat timp utilizatorul / utilizatorii inteleg aceasta limitare si se asigura ca nu mai are nimeni altcineva deschisa aplicatia, treaba cu stocarea shared functioneaza cu absolut zero probleme.
#6
Erori / Re: icesoft v1.8.4 - denumire ...
Last post by sepromsrl - Apr 07, 2024, 12:44 PM
Multumesc mult.

Inca o problema tot cu versiunea asta:
"
Mesaj primit de la ANAF:
endTime = 07-04-2024 13:35:26 nu poate fi in viitor fata de momentul requestului = 07-04-2024 13:35:09

"

A sarit vreo curea sau s-a infranat vreun rulment pe la masinariile lor ca a ramas un pic in urma cu secundele.

Serverul isi interogheaza timpul cum ca se termina cu minutul "35" secunda "9" iar cererea - conform sistemului lor - vine la minutul "35" secunda "26". Am sincronizarea automata cu ntpdate.

Rezolvare:  trag frana de mana, ma duc un pic mai in urma cu secundele si se rezolva problema.
# date 202404071335.00
Sun Apr  7 13:35:00 EEST 2024

#uname -a
FreeBSD facturici!seprom!ro 13.1-RELEASE FreeBSD 13.1-RELEASE releng/13.1-n250148-fc952ac2212 GENERIC ALPHA

Icefact v1.8.5 Linux x86_64
#7
Noutăţi / Re: Utilizare aplicatie online
Last post by SOMI - Apr 05, 2024, 01:04 PM
Corect, aveți mare dreptate.
#8
eFactura / Re: Facturi receptionate
Last post by Serghei - Apr 03, 2024, 09:52 AM
Țin minte că am studiat problema asta cu timestamp-ul, dar nu mai știu exact ce nu mi-a placut la ea. Am impresia că (cel puțin la la tokenii opaque) nu zice CÂND expiră, ci îmi spune ÎN CÂT TIMP expiră, ceea ce este complet inutil fără o referință a momentului emiterii.

Oricum, în curând va trebui să trecem la JWT, poate acolo este mai precisă chestia asta cu expirarea.

Legat de refresh automat... Am făcut niște teste, pare să funcționeze bine, probabil se va implementa la un moment dat.
#9
Noutăţi / Re: Utilizare aplicatie online
Last post by Serghei - Apr 03, 2024, 09:43 AM
Din pacate genul asta de sincronizare nu prea functioneaza cand este vorba de baze de date relationale. Daca sync-ul se executa exact in mijlocul unei tranzactii, exista sanse foarte mari ca baza de date sa fie corupta si sa se piarda toate datele.
#10
Erori / Re: icesoft v1.8.4 - denumire ...
Last post by Serghei - Apr 03, 2024, 09:36 AM
O sa verificam si o sa tinem cont de sugestiile dvs.