In ecore, in the user table, lasttime is 0 if the user hasn't logged in (so that's one easy way to tell). However, as an ecore administrator, I'd like to admonish against dropping users (or nodetypes). Ecore 0.8 does not do well with deleting nodes of those types. Now, theoretically, users that have never logged in shouldn't have any record fragments to them, but certainly deleting users that have logged in is a bad idea.
Ecore assumes when it gets a node (and oftentimes in the code), that the author_user attribute exists. Therefore, if you start deleting users, you're going to see a huge outcropping of Server Errors! until all the places where this assumption is false is special cased in. This includes messages, logs, etc.
All things considered, the potential performance gain of deleting users is low, seeing as database key lookup is, I believe, O(log n). You're not going to pick up much by whacking those users, compared to the gigantic amounts of breakage you might incur.
IMO, there are better places where you can pick up perf than carving out never-logged-in users. We've had this same discussion several times at Everything2.com
--
jb