Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

huge tags.temp file created in some project in windows #20

Closed
jmlucjav opened this issue Apr 10, 2015 · 9 comments
Closed

huge tags.temp file created in some project in windows #20

jmlucjav opened this issue Apr 10, 2015 · 9 comments

Comments

@jmlucjav
Copy link

I have twice been bitten by this. When opening some files from https://github.com/coolwanglu/neovim.as, a file tags.temp is created that (I think) grows for ever. First time it was about 3GB when I deleted I think. This time 1.5GB. I still have it in my trash.

The only project that had the the issue is the one mentioned above. I am on windows7, using ctags5.8

Let me know if I can help troubleshoot this, I had to remove gutentags for now, as my project lives in dropbox, and the huge tags file screws my quota.

@ludovicchabant
Copy link
Owner

I'm on Windows 8 with ctags 5.8 but I don't have this problem. Are you using gVim or neovim for this? (I have never tried gutentags on neovim).

To troubleshoot this, pull the latest version of gutentags, and add this to your vimrc:

let g:gutentags_define_advanced_commands = 1

Restart Vim and run :GutentagsToggleTrace. It should tell you that tracing is enabled. Now open a file from that project and you should see some debug output about what command line is being run to generate the tags. You should also see the path for a log file that you can check for more info.

This should give you the exact way ctags is being run, and you can run it by hand and see if for some reason it gets in an infinite loop or something that makes it generate a super huge tags file.
(and actually before you do any of this, you could also just run a vanilla ctags -R inside that project and see if it happens...)

@jmlucjav
Copy link
Author

plain ctags -R is the issue, tags file grows rapidly. Not sure if this should be reported somewhere? I thing ctags in windows is not really updated, ctags5.8 was quite old...

@ludovicchabant
Copy link
Owner

Are you using plain old ctags, or exhuberant ctags? I just downloaded exhuberant ctags and ran it on that same repository on Windows 8 and it worked fine... I doubt that the Windows version difference between 7 and 8 is the issue here but you never know... either way, it might be good to re-download exhuberant ctags just to make sure?

@ludovicchabant
Copy link
Owner

Reporting bugs is apparently done here (http://sourceforge.net/p/ctags/bugs/) but judging from the date of the last release and the age of the bug reports in there I'm not sure how that will go :(

@justinmk
Copy link
Contributor

https://github.com/fishman/ctags has been seeing a lot of attention, might want to file a bug there (or maybe it's already fixed)

@jmlucjav
Copy link
Author

@ludovicchabant yes, I am using exhuberant ctags from sf. My suspicion is that you did not reproduce it not because vin7/win8 diff, but because you have less source code. If you just clone the neovim.AS repo, you have just its own source, but if you do this:

npm install -g grunt-cli
path_to_Atom\resources\app\apm\bin\apm.cmd install .
grunt

this will bring a number of deps (in the form of js souce), that then possible create the issue. You need the following installed for this:

nodeJS
Atom

@justinmk I didn't know about that fork, have they produced any release newer than ctags5.8? could not find a windows binary

@ludovicchabant
Copy link
Owner

Ah yeah I have stuff like node_modules in my default exclude list in my .ctags file.

@jmlucjav
Copy link
Author

ok, I verified

ctags -R --exclude=node_modules

does not have the issue. I also added node_modules to my g:gutentags_exclude and now the issue is gone.
thanks!

@ludovicchabant
Copy link
Owner

Note that you can add some global excludes to a ~/.ctags or to g:gutentags_exclude (depending on whether you want it to happen always, even when running ctags yourself, or just always in gutentags), but if you want to exclude stuff only for that specific project, you can create a .ctags file at that project's root, and add the exclude rules in there. This may be useful if you want other projects to have their node_modules indexed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants