GFSH获取和entryset查询返回以下结果:无法从PdxInstance创建JSON文档

问题描述

我们有一些区域,它们包含相似但并不总是相同的PDX对象,它们来自以这种方式定义的C#类:

public class Quote : IPdxSerializable
{
    public string MsgType { get; set; }
    public char OrdType { get; set; }
    public string SecurityType { get; set; }
    ... etc ...

    public void ToData(IPdxWriter writer)
    {
        writer.WriteString("MsgType",MsgType);
        writer.WriteChar("OrdType",OrdType);
        writer.WriteString("SecurityType",SecurityType);
    }

    public void FromData(IPdxReader reader)
    {
        MsgType = reader.ReadString("MsgType");
        OrdType = reader.ReadChar("OrdType");
        SecurityType = reader.ReadString("SecurityType");
    }

    public static IPdxSerializable CreateDeserializable()
    {
        return new Quote();
    }
}

在该区域中有一些类似类型的条目之后,当使用GFSH查询像这样的区域query --query='select key,value from /quote.entrySet'甚至是简单的获取get --key="AD0FAAE2" --region=quote时,通常不会在消息中产生任何结果

Message : Could not create JSON document from PdxInstance

query --query='select * from /quote'中将RESULT_VIEWER设置为external后,非特定查询set variable --name=APP_RESULT_VIEWER --value="external"确实产生了可见的结果

我担心数据输入损坏了区域,无法将其取出,但是数据在那里。假设我清理了该区域,并且正在使用2种类型的引用对象进行1次操作。 GFSH如下所示:

gfsh

所以我可以看到数据是PDX序列化的,并且只有有时我可以get像这样:

gfsh2

有时get,有时not

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...