Skip to content

Commit

Permalink
improved DAL for jsonb type
Browse files Browse the repository at this point in the history
  • Loading branch information
OlenaKostash authored and AntyaDev committed Nov 8, 2024
1 parent 3480ff2 commit e891149
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 19 deletions.
6 changes: 4 additions & 2 deletions src/NBomber.Sinks.Timescale/Contracts/NodeInfoDbRecord.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
using System.ComponentModel.DataAnnotations.Schema;
using NBomber.Contracts.Stats;
using NBomber.Sinks.Timescale.DAL;
using NpgsqlTypes;
using RepoDb.Attributes.Parameter.Npgsql;

namespace NBomber.Sinks.Timescale.Contracts;

Expand All @@ -11,6 +13,6 @@ internal class NodeInfoDbRecord
[Column(ColumnNames.CurrentOperation)] public OperationType CurrentOperation { get; set; }
[Column(ColumnNames.TestSuite)] public string TestSuite { get; set; }
[Column(ColumnNames.TestName)] public string TestName { get; set; }
[Column(ColumnNames.Metadata)] public string Metadata{ get; set; }
[Column(ColumnNames.NodeInfo)] public string NodeInfo { get; set; }
[Column(ColumnNames.Metadata)][NpgsqlDbType(NpgsqlDbType.Jsonb)] public string Metadata{ get; set; }
[Column(ColumnNames.NodeInfo)][NpgsqlDbType(NpgsqlDbType.Jsonb)] public string NodeInfo { get; set; }
}
18 changes: 1 addition & 17 deletions src/NBomber.Sinks.Timescale/TimescaleDbSink.cs
Original file line number Diff line number Diff line change
Expand Up @@ -87,25 +87,9 @@ public async Task Start(SessionStartInfo sessionInfo)
NodeInfo = Json.serialize(nodeInfo)
};

var text = @$"INSERT INTO {TableNames.SessionsTable}
(""{ColumnNames.Time}"",
""{ColumnNames.SessionId}"",
""{ColumnNames.CurrentOperation}"",
""{ColumnNames.TestSuite}"",
""{ColumnNames.TestName}"",
""{ColumnNames.Metadata}"",
""{ColumnNames.NodeInfo}"")
VALUES
('{record.Time}',
'{record.SessionId}',
'{record.CurrentOperation}',
'{record.TestSuite}',
'{record.TestName}',
'{record.Metadata}'::jsonb,
'{record.NodeInfo}'::jsonb)";
try
{
await _mainConnection.ExecuteNonQueryAsync(text);
var res = await _mainConnection.InsertAsync(tableName: TableNames.SessionsTable, record);
}
catch (Exception ex)
{
Expand Down

0 comments on commit e891149

Please sign in to comment.