Enable Discovery debug logging for production troubleshooting
- Add DISCOVERY_LOG_LEVEL=debug - Add DISCOVERY_SHOW_PROGRESS=true - Temporary changes for debugging InitializerProcessor fixes on production
This commit is contained in:
44
src/Framework/Filesystem/LockableStorage.php
Normal file
44
src/Framework/Filesystem/LockableStorage.php
Normal file
@@ -0,0 +1,44 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace App\Framework\Filesystem;
|
||||
|
||||
/**
|
||||
* Interface für File-Locking Storage-Operationen
|
||||
*
|
||||
* Ermöglicht exklusiven Zugriff auf Dateien für kritische Operationen.
|
||||
* Verhindert Data Corruption bei Concurrent Access.
|
||||
*/
|
||||
interface LockableStorage
|
||||
{
|
||||
/**
|
||||
* Führt Operation mit exklusivem File-Lock aus
|
||||
*/
|
||||
public function withExclusiveLock(string $path, callable $operation): mixed;
|
||||
|
||||
/**
|
||||
* Führt Operation mit Shared-Lock (Read-Lock) aus
|
||||
*/
|
||||
public function withSharedLock(string $path, callable $operation): mixed;
|
||||
|
||||
/**
|
||||
* Prüft ob Datei gesperrt ist
|
||||
*/
|
||||
public function isLocked(string $path): bool;
|
||||
|
||||
/**
|
||||
* Schreibt mit File-Lock
|
||||
*/
|
||||
public function putWithLock(string $path, string $content): void;
|
||||
|
||||
/**
|
||||
* Update mit File-Lock
|
||||
*/
|
||||
public function updateWithLock(string $path, callable $updateCallback): void;
|
||||
|
||||
/**
|
||||
* Append mit File-Lock
|
||||
*/
|
||||
public function appendWithLock(string $path, string $content): void;
|
||||
}
|
||||
Reference in New Issue
Block a user