Premiere commit - Omika
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<OutputType>Exe</OutputType>
|
||||
<TargetFramework>net10.0</TargetFramework>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<Nullable>enable</Nullable>
|
||||
<RootNamespace>Omika.IdempotenceProbe</RootNamespace>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="System.Data.OleDb" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
@@ -0,0 +1,192 @@
|
||||
// Probe de diagnostic IDEMPOTENCE — 100% LECTURE SEULE.
|
||||
// Interroge MobReception, MobLog et les Interventions E2E_TEST dans BATIK_TEST
|
||||
// pour reconstruire la chronologie des OperationId CREATE et Replay.
|
||||
// Aucun INSERT / UPDATE / DELETE.
|
||||
using System.Data.OleDb;
|
||||
|
||||
const string server = "127.0.0.1";
|
||||
const int port = 4900;
|
||||
const string user = "susana";
|
||||
const string password = "123";
|
||||
|
||||
string BuildConnStr(string database) =>
|
||||
$"Provider=PCSOFT.HFSQL;Data Source={server}:{port};Initial Catalog={database};User ID={user};Password={password}";
|
||||
|
||||
const string createOpId = "5b915439-d9d9-44b5-9552-1f8f90db96c3";
|
||||
const string replayOpId = "0fce297f-e4e4-45ad-9027-b4e6e23d5c8a";
|
||||
|
||||
Console.WriteLine("=== DIAGNOSTIC IDEMPOTENCE — LECTURE SEULE ===");
|
||||
Console.WriteLine($"CREATE OperationId : {createOpId}");
|
||||
Console.WriteLine($"Replay OperationId : {replayOpId}");
|
||||
Console.WriteLine();
|
||||
|
||||
try
|
||||
{
|
||||
using var conn = new OleDbConnection(BuildConnStr("BATIK_TEST"));
|
||||
conn.Open();
|
||||
Console.WriteLine("Connexion BATIK_TEST: OPEN");
|
||||
Console.WriteLine();
|
||||
|
||||
// ============================================================
|
||||
// 1. Interventions E2E_TEST (toutes)
|
||||
// ============================================================
|
||||
Console.WriteLine("── 1. Interventions E2E_TEST (IN_RefInterne LIKE 'E2E_TEST%') ──");
|
||||
using (var cmd = conn.CreateCommand())
|
||||
{
|
||||
cmd.CommandText = "SELECT IN_PKID, IN_RefInterne, IN_Titre, IN_Description FROM Intervention WHERE IN_RefInterne LIKE 'E2E_TEST%' ORDER BY IN_PKID";
|
||||
using var reader = cmd.ExecuteReader();
|
||||
int n = 0;
|
||||
while (reader.Read())
|
||||
{
|
||||
n++;
|
||||
Console.WriteLine($" [{n}] IN_PKID={reader["IN_PKID"]}, Ref={reader["IN_RefInterne"]}, Titre={reader["IN_Titre"]}, Desc={reader["IN_Description"]}");
|
||||
}
|
||||
Console.WriteLine($" Total E2E_TEST: {n}");
|
||||
}
|
||||
Console.WriteLine();
|
||||
|
||||
// ============================================================
|
||||
// 2. MobLog pour CREATE OperationId
|
||||
// ============================================================
|
||||
Console.WriteLine($"── 2. MobLog pour CREATE OperationId {createOpId} ──");
|
||||
using (var cmd = conn.CreateCommand())
|
||||
{
|
||||
cmd.CommandText = "SELECT ML_PKID, ML_DateCreat, ML_Message, ML_Niveau FROM MobLog WHERE ML_Message LIKE ? ORDER BY ML_PKID";
|
||||
cmd.Parameters.Add(new OleDbParameter { Value = $"%{createOpId}%" });
|
||||
using var reader = cmd.ExecuteReader();
|
||||
int n = 0;
|
||||
while (reader.Read())
|
||||
{
|
||||
n++;
|
||||
Console.WriteLine($" [{n}] ML_PKID={reader["ML_PKID"]}, Date={reader["ML_DateCreat"]}, Niveau={reader["ML_Niveau"]}");
|
||||
Console.WriteLine($" Msg={reader["ML_Message"]}");
|
||||
}
|
||||
Console.WriteLine($" Total MobLog CREATE: {n}");
|
||||
}
|
||||
Console.WriteLine();
|
||||
|
||||
// ============================================================
|
||||
// 3. MobLog pour Replay OperationId
|
||||
// ============================================================
|
||||
Console.WriteLine($"── 3. MobLog pour Replay OperationId {replayOpId} ──");
|
||||
using (var cmd = conn.CreateCommand())
|
||||
{
|
||||
cmd.CommandText = "SELECT ML_PKID, ML_DateCreat, ML_Message, ML_Niveau FROM MobLog WHERE ML_Message LIKE ? ORDER BY ML_PKID";
|
||||
cmd.Parameters.Add(new OleDbParameter { Value = $"%{replayOpId}%" });
|
||||
using var reader = cmd.ExecuteReader();
|
||||
int n = 0;
|
||||
while (reader.Read())
|
||||
{
|
||||
n++;
|
||||
Console.WriteLine($" [{n}] ML_PKID={reader["ML_PKID"]}, Date={reader["ML_DateCreat"]}, Niveau={reader["ML_Niveau"]}");
|
||||
Console.WriteLine($" Msg={reader["ML_Message"]}");
|
||||
}
|
||||
Console.WriteLine($" Total MobLog Replay: {n}");
|
||||
}
|
||||
Console.WriteLine();
|
||||
|
||||
// ============================================================
|
||||
// 4. MobReception pour CREATE OperationId
|
||||
// ============================================================
|
||||
Console.WriteLine($"── 4. MobReception pour CREATE OperationId {createOpId} ──");
|
||||
using (var cmd = conn.CreateCommand())
|
||||
{
|
||||
cmd.CommandText = "SELECT MR_PKID, MR_IDToSRV, MR_JSON, MR_CMD, MR_Fait, MR_DateHeureRecep FROM MobReception WHERE MR_JSON LIKE ? ORDER BY MR_PKID";
|
||||
cmd.Parameters.Add(new OleDbParameter { Value = $"%{createOpId}%" });
|
||||
using var reader = cmd.ExecuteReader();
|
||||
int n = 0;
|
||||
while (reader.Read())
|
||||
{
|
||||
n++;
|
||||
Console.WriteLine($" [{n}] MR_PKID={reader["MR_PKID"]}, MR_IDToSRV={reader["MR_IDToSRV"]}, Fait={reader["MR_Fait"]}, Date={reader["MR_DateHeureRecep"]}");
|
||||
Console.WriteLine($" JSON={reader["MR_JSON"]}");
|
||||
}
|
||||
Console.WriteLine($" Total MobReception CREATE: {n}");
|
||||
}
|
||||
Console.WriteLine();
|
||||
|
||||
// ============================================================
|
||||
// 5. MobReception pour Replay OperationId
|
||||
// ============================================================
|
||||
Console.WriteLine($"── 5. MobReception pour Replay OperationId {replayOpId} ──");
|
||||
using (var cmd = conn.CreateCommand())
|
||||
{
|
||||
cmd.CommandText = "SELECT MR_PKID, MR_IDToSRV, MR_JSON, MR_CMD, MR_Fait, MR_DateHeureRecep FROM MobReception WHERE MR_JSON LIKE ? ORDER BY MR_PKID";
|
||||
cmd.Parameters.Add(new OleDbParameter { Value = $"%{replayOpId}%" });
|
||||
using var reader = cmd.ExecuteReader();
|
||||
int n = 0;
|
||||
while (reader.Read())
|
||||
{
|
||||
n++;
|
||||
Console.WriteLine($" [{n}] MR_PKID={reader["MR_PKID"]}, MR_IDToSRV={reader["MR_IDToSRV"]}, Fait={reader["MR_Fait"]}, Date={reader["MR_DateHeureRecep"]}");
|
||||
Console.WriteLine($" JSON={reader["MR_JSON"]}");
|
||||
}
|
||||
Console.WriteLine($" Total MobReception Replay: {n}");
|
||||
}
|
||||
Console.WriteLine();
|
||||
|
||||
// ============================================================
|
||||
// 6. Tous les MobLog contenant E2E_TEST (pour corréler les références)
|
||||
// ============================================================
|
||||
Console.WriteLine("── 6. MobLog contenant 'E2E_TEST' (corrélation références) ──");
|
||||
using (var cmd = conn.CreateCommand())
|
||||
{
|
||||
cmd.CommandText = "SELECT ML_PKID, ML_DateCreat, ML_Message, ML_Niveau FROM MobLog WHERE ML_Message LIKE '%E2E_TEST%' ORDER BY ML_PKID";
|
||||
using var reader = cmd.ExecuteReader();
|
||||
int n = 0;
|
||||
while (reader.Read())
|
||||
{
|
||||
n++;
|
||||
Console.WriteLine($" [{n}] ML_PKID={reader["ML_PKID"]}, Date={reader["ML_DateCreat"]}, Niveau={reader["ML_Niveau"]}");
|
||||
Console.WriteLine($" Msg={reader["ML_Message"]}");
|
||||
}
|
||||
Console.WriteLine($" Total MobLog E2E_TEST: {n}");
|
||||
}
|
||||
Console.WriteLine();
|
||||
|
||||
// ============================================================
|
||||
// 7. Tous les MobReception contenant E2E_TEST
|
||||
// ============================================================
|
||||
Console.WriteLine("── 7. MobReception contenant 'E2E_TEST' ──");
|
||||
using (var cmd = conn.CreateCommand())
|
||||
{
|
||||
cmd.CommandText = "SELECT MR_PKID, MR_IDToSRV, MR_JSON, MR_CMD, MR_Fait, MR_DateHeureRecep FROM MobReception WHERE MR_JSON LIKE '%E2E_TEST%' ORDER BY MR_PKID";
|
||||
using var reader = cmd.ExecuteReader();
|
||||
int n = 0;
|
||||
while (reader.Read())
|
||||
{
|
||||
n++;
|
||||
Console.WriteLine($" [{n}] MR_PKID={reader["MR_PKID"]}, MR_IDToSRV={reader["MR_IDToSRV"]}, Fait={reader["MR_Fait"]}, Date={reader["MR_DateHeureRecep"]}");
|
||||
Console.WriteLine($" JSON={reader["MR_JSON"]}");
|
||||
}
|
||||
Console.WriteLine($" Total MobReception E2E_TEST: {n}");
|
||||
}
|
||||
Console.WriteLine();
|
||||
|
||||
// ============================================================
|
||||
// 8. TOSRV (base Service) — vérifier s'il reste des opérations
|
||||
// ============================================================
|
||||
Console.WriteLine("── 8. TOSRV (base Service BATIK.01_BLS) ──");
|
||||
using (var srvConn = new OleDbConnection(BuildConnStr("BATIK.01_BLS")))
|
||||
{
|
||||
srvConn.Open();
|
||||
using var cmd = srvConn.CreateCommand();
|
||||
cmd.CommandText = "SELECT IDTOSRV, TS_Date, TS_Mobile, TS_JSON, TS_CMD FROM TOSRV";
|
||||
using var reader = cmd.ExecuteReader();
|
||||
int n = 0;
|
||||
while (reader.Read())
|
||||
{
|
||||
n++;
|
||||
Console.WriteLine($" [{n}] IDTOSRV={reader["IDTOSRV"]}, Date={reader["TS_Date"]}, Mobile={reader["TS_Mobile"]}, Cmd={reader["TS_CMD"]}");
|
||||
Console.WriteLine($" JSON={reader["TS_JSON"]}");
|
||||
}
|
||||
Console.WriteLine($" Total TOSRV: {n}");
|
||||
}
|
||||
Console.WriteLine();
|
||||
|
||||
Console.WriteLine("=== DIAGNOSTIC TERMINÉ (aucune écriture effectuée) ===");
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Console.WriteLine($" ERREUR: {ex.Message}");
|
||||
}
|
||||
Reference in New Issue
Block a user