@@ -5869,6 +5869,55 @@ Y_UNIT_TEST_SUITE(KqpOlapTypes) {
58695869 testHelper.ReadData (" SELECT * FROM `/Root/ColumnTableTest` WHERE id=1" , TStringBuilder () << " [[1;" << ts.MicroSeconds () << " u;" << ts.MicroSeconds () << " u]]" );
58705870 }
58715871
5872+ Y_UNIT_TEST (Decimal) {
5873+ TKikimrSettings runnerSettings;
5874+ runnerSettings.WithSampleTables = false ;
5875+
5876+ TTestHelper testHelper (runnerSettings);
5877+
5878+ TVector<TTestHelper::TColumnSchema> schema = {
5879+ TTestHelper::TColumnSchema ().SetName (" id" ).SetType (NScheme::NTypeIds::Int64).SetNullable (false ),
5880+ TTestHelper::TColumnSchema ().SetName (" dec" ).SetType (NScheme::NTypeIds::Decimal).SetNullable (false ),
5881+ };
5882+
5883+ TTestHelper::TColumnTable testTable;
5884+ testTable.SetName (" /Root/ColumnTableTest" ).SetPrimaryKey ({" id" }).SetSharding ({" id" }).SetSchema (schema);
5885+ testHelper.CreateTable (testTable);
5886+
5887+ {
5888+ TValueBuilder builder;
5889+ builder.BeginList ();
5890+ builder.AddListItem ().BeginStruct ()
5891+ .AddMember (" id" ).Int64 (1 )
5892+ .AddMember (" dec" ).Decimal (TString (" 10.1" ))
5893+ .EndStruct ();
5894+ builder.AddListItem ().BeginStruct ()
5895+ .AddMember (" id" ).Int64 (2 )
5896+ .AddMember (" dec" ).Decimal (TString (" inf" ))
5897+ .EndStruct ();
5898+ builder.AddListItem ().BeginStruct ()
5899+ .AddMember (" id" ).Int64 (3 )
5900+ .AddMember (" dec" ).Decimal (TString (" -inf" ))
5901+ .EndStruct ();
5902+ builder.AddListItem ().BeginStruct ()
5903+ .AddMember (" id" ).Int64 (4 )
5904+ .AddMember (" dec" ).Decimal (TString (" nan" ))
5905+ .EndStruct ();
5906+ builder.AddListItem ().BeginStruct ()
5907+ .AddMember (" id" ).Int64 (5 )
5908+ .AddMember (" dec" ).Decimal (TString (" -nan" ))
5909+ .EndStruct ();
5910+ builder.EndList ();
5911+ const auto result = testHelper.GetKikimr ().GetTableClient ().BulkUpsert (testTable.GetName (), builder.Build ()).GetValueSync ();
5912+ UNIT_ASSERT_C (result.IsSuccess () , result.GetIssues ().ToString ());
5913+ }
5914+ testHelper.ReadData (" SELECT dec FROM `/Root/ColumnTableTest` WHERE id=1" , " [[\" 10.1\" ]]" );
5915+ testHelper.ReadData (" SELECT dec FROM `/Root/ColumnTableTest` WHERE id=2" , " [[\" inf\" ]]" );
5916+ testHelper.ReadData (" SELECT dec FROM `/Root/ColumnTableTest` WHERE id=3" , " [[\" -inf\" ]]" );
5917+ testHelper.ReadData (" SELECT dec FROM `/Root/ColumnTableTest` WHERE id=4" , " [[\" nan\" ]]" );
5918+ testHelper.ReadData (" SELECT dec FROM `/Root/ColumnTableTest` WHERE id=5" , " [[\" -nan\" ]]" );
5919+ }
5920+
58725921 Y_UNIT_TEST (TimestampCmpErr) {
58735922 TKikimrSettings runnerSettings;
58745923 runnerSettings.WithSampleTables = false ;
0 commit comments