@@ -66,6 +66,41 @@ func writePostingListToDisk(kvs []*bpb.KV) error {
6666 return writer .Flush ()
6767}
6868
69+ func TestEmptyTypeSchema (t * testing.T ) {
70+ dir , err := os .MkdirTemp ("" , "storetest_" )
71+ x .Check (err )
72+ defer os .RemoveAll (dir )
73+
74+ opt := badger .DefaultOptions (dir )
75+ ps , err := badger .OpenManaged (opt )
76+ x .Check (err )
77+ pstore = ps
78+ posting .Init (ps , 0 , false )
79+ Init (ps )
80+
81+ typeName := "1-temp"
82+ ts := uint64 (10 )
83+ txn := pstore .NewTransactionAt (ts , true )
84+ defer txn .Discard ()
85+ e := & badger.Entry {
86+ Key : x .TypeKey (typeName ),
87+ Value : make ([]byte , 0 ),
88+ UserMeta : posting .BitSchemaPosting ,
89+ }
90+ require .Nil (t , txn .SetEntry (e .WithDiscard ()))
91+ require .Nil (t , txn .CommitAt (ts , nil ))
92+
93+ schema .Init (ps )
94+ require .Nil (t , schema .LoadFromDb (context .Background ()))
95+
96+ req := & pb.SchemaRequest {}
97+ types , err := GetTypes (context .Background (), req )
98+ require .Nil (t , err )
99+
100+ require .Equal (t , 1 , len (types ))
101+ x .ParseNamespaceAttr (types [0 ].TypeName )
102+ }
103+
69104func TestMultipleTxnListCount (t * testing.T ) {
70105 dir , err := os .MkdirTemp ("" , "storetest_" )
71106 x .Check (err )
0 commit comments