Получение ошибки Код ошибки -1: java.io.IOException: Неизвестный тип распаковки: 196

Я пытаюсь получить данные из aerospike, используя метод scanCallback(). После запуска в течение некоторого времени без полного сканирования аэрошпиля я получаю сообщение об ошибке

    "Error Code -1: java.io.IOException: Unknown unpack type: 196"

Я понятия не имею, что означает эта ошибка, и нет онлайн-документации по этой ошибке в Интернете. Я какое-то время борюсь с этой ошибкой :( Любая помощь будет очень признательна. Большое спасибо заранее


person Sathiya Narayanan    schedule 04.02.2016    source источник


Ответы (1)


Эта ошибка означает, что один из бинов в записи является списком или картой, и один из элементов списка/карты не может быть проанализирован. Временный обходной путь — установить для includeBinData значение false, сканировать ключи и использовать ключ для чтения каждой записи по отдельности.

public void runScan()
{
    ScanPolicy policy = new ScanPolicy();
    policy.concurrentNodes = false;
    policy.includeBinData = false;

    client.scanAll(policy, namespace, set, this);
}

@Override
public void scanCallback(Key key, Record record) {
    try {
        Record rec = client.get(null, key);
    }
    catch (Exception e) {
        // Now we know the key with the corrupt record.
        System.out.println("Error reading " + key);
    }
}

Как только ключ будет идентифицирован, попробуйте прочитать определенные бины, чтобы увидеть, какой бин в записи вызывает проблему. Этот бин, возможно, придется переписать.

person Brian    schedule 06.02.2016