Skip to main content
Announcements
Global Transformation Awards! Applications are now open. Submit Entry
cancel
Showing results for 
Search instead for 
Did you mean: 
luciano_garcia
Contributor III
Contributor III

Erro 300 no QVS: Out of Memory - QVS

Olá Comunidade !

Possuo um QVD com a estrutura abaixo:

@1@2...@10SourceFile
2017-01-01GETMozilla/5.0+(Windows+NT+6.3;+WOW64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/55.0.2883.87+Safari/537.36C:\Inetpub\logs\LogsFiles\W3SVC2\u_ex170101.log
2017-01-02GETMozilla/5.0+(Windows+NT+10.0;+Win64;+x64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/56.0.2924.76+Safari/537.36C:\Inetpub\logs\LogsFiles\W3SVC2\u_ex170102.log
............

Ele possui 2.885.540 registros, e quando tento carregá-lo com o Script abaixo, é apresentado o "Erro 300: Out of Memory" (mesmo sem ter consumido mais memória RAM disponível no computador, restando cerca de 28GB) :

LOAD *, SubField([IISW3SVC1_CS-UserAgent], ';+') as[IISW3SVC1_UserAgent_Breakdown]

;

LOAD [IISW3SVC1_CS-UserAgent]

, subfield([IISW3SVC1_CS-UserAgent], '+', 1) as [IISW3SVC1_UserAgent_Browser]

;

LOAD Distinct @10 as [IISW3SVC1_CS-UserAgent]

FROM (qvd);

Porém quando o carrego sem o último LOAD precedente (que cria o campo com Subfield ";+" sobre a coluna @10), a recarga ocorre normalmente.


Gostaria de saber porque isso ocorre e se há maneira de corrigir esta leitura.


Anexo print do compilador com a mensagem completa do erro.


Ass: L G

Labels (2)
1 Solution

Accepted Solutions
Clever_Anjos
Employee
Employee

Tente assim:

t:

LOAD

      Distinct

      @10 as [IISW3SVC1_CS-UserAgent],

      subfield(@10 , '+', 1) as [IISW3SVC1_UserAgent_Browser]

FROM

(qvd);

load *,

      SubField([IISW3SVC1_CS-UserAgent], ';+') as [IISW3SVC1_UserAgent_Breakdown]

Resident t;

drop Table t;   

View solution in original post

2 Replies
Clever_Anjos
Employee
Employee

Tente assim:

t:

LOAD

      Distinct

      @10 as [IISW3SVC1_CS-UserAgent],

      subfield(@10 , '+', 1) as [IISW3SVC1_UserAgent_Browser]

FROM

(qvd);

load *,

      SubField([IISW3SVC1_CS-UserAgent], ';+') as [IISW3SVC1_UserAgent_Breakdown]

Resident t;

drop Table t;   

luciano_garcia
Contributor III
Contributor III
Author

Show ! Funciona mesmo cleveranjos‌!

Fiz a recarga no qvw demo, e depois tentei no Script completo, e deu certo...

Aparentemente apenas 1 linha da base, estava respondendo pelo erro. Ela possuía 371.359 caracteres na coluna @10 que estava sendo lida pelo LOAD. Curiosamente sem a carga da linha em questão, o script funcionava.

Valeu pela ajuda!