I have a 2GB CSP.log file that I need to investigate.
I'm using a %Stream.FileCharacter() object to open the file and then using the .FindAt() to search for a particular string.
I'm seeing the FindAt() stop after processing 49m characters?
Here is my code:
k
s stream=##class(%Stream.FileCharacter).%New()
d stream.LinkToFile("d:\csp.log")
s x=""
s i=0
s j=0
w stream.Rewind()
w stream.AtEnd
w stream.SizeGet()
while(stream.AtEnd=0){set i=stream.FindAt(-1,"Invalid password",x)+i set j=j+1}
w stream.AtEnd
w i
w j
Which gives the following output:
