Commit Graph
418 Commits
Author SHA1 Message Date
gojomo 2e03aa8cb7 [HER-1764] H3 needs in-UI quit/shutdown option
* EngineResource.java
    add 'exit' control area at bottom of page
    allow JVM-exit if confirm-box checked and either no jobs built/running or extra confirm boxes for each built job checked
* Flash.java
    fix to allow multiple flashes per page load
* JobResource.java, CrawlJob.java
    move useful status string method to CrawlJob
2010-06-16 00:51:58 +00:00
gojomo 4c1a4f2e12 remove unneeded import 2010-06-15 21:34:57 +00:00
gojomo 3c8e72a20e * BloomFilterTest.java
disable by renaming ('xest') those tests taking >15mins each
2010-06-15 21:33:34 +00:00
gojomo 6be649b286 [HER-1783] BloomFilter64bit bit-length bug prevents full bitfield from being used; premature saturation
* BloomFilter64bit.java
    include the split-to-subarrays (for larger bitfields) and round-up-to-power-of-2 (for performance) options previously in largely-redundant classes
    fit a number of problems with int/long overflow and bitwise ops
    add methods for reporting/testing
* BloomFilter.java
    add methods for reporting/testing
* BloomFilterTest.java, BloomFilter64bitTest.java
    more extensive tests, including two lengthy tests of default/oversized blooms usually disabled by renaming
* BloomFilter32bit.java, BloomFilter32bitSplit.java, BloomFilter32bp2.java, BloomFilter32bp2Split.java
    deleted as buggy or redundant
* BenchmarkBlooms.java
    move to test source dir
* BloomUriUniqFilter.java
    change to accept filter instance (rather than parameters) for added configuration flexibility
    fix comments
* BloomUriUniqFilterTest.java
    supply filter not paramters
2010-06-15 21:30:34 +00:00
gojomo b571730b4b Fix [HER-1774] TransclusionDecideRule defies expectation when seed redirects
with seed-redirects-new-seed enabled
* TransclusionDecideRule.java
    evaluate(): skip over 'R' hops without counting them as transcludes
2010-06-14 23:30:22 +00:00
gojomo e1f76dbc07 [HER-1784] default profile MatchesListRegexDecideRule intended to REJECT doesn't
* dist/src/main/conf/jobs/profile-defaults/profile-crawler-beans.cxml
* engine/src/main/resources/org/archive/crawler/restlet/profile-crawler-beans.cxml
    add intended REJECT decision for the late (rules[4]) MatchesListRegexDecideRule
2010-06-14 22:22:34 +00:00
gojomo f9a3c2344c * BloomFilterTest.java
explicit deferenced bloom instance to avoid OOME
2010-06-08 03:38:56 +00:00
gojomo 4e1b47746c * commons/pom.xml
increase heap for testing to 1024m to accomodate big bloom bitfield tests
2010-06-08 03:28:51 +00:00
gojomo e9a11e56c6 HER-1783 BloomFilter64bit bit-length bug prevents full bitfield from being used; premature saturation
* BloomFilter64bit.java
    fix long arithmetic calculating bit-length m in constructor
    slight optimization of add()
* BloomFilterTest.java
    abstract superclass for bloom impl class tests
* BloomFilter64bitTest.java
    sanity check that set bits, after a handful of adds into default-sized filter, occupy top and bottom 20% of range (which would have caught this bug earlier)
2010-06-08 02:39:35 +00:00
gojomo e673c7d781 * WorkQueueFrontier.java
experimental utility method to force-wake all snoozed (politeness and retry-delayed) queues
2010-06-04 22:31:16 +00:00
gojomo 8b696da475 * CrawlURI.java
dump more info if code that really shouldn't run actually runs
2010-06-04 22:27:59 +00:00
gojomo 5f83fe75a2 HER-1010 crawl favicon.ico
* (self tests)
    correct expectations to now include /favicon.ico
2010-06-03 00:31:32 +00:00
gojomo f81a941d97 HER-1010 crawl favicon.ico
* ExtractorHTTP.java
    consider /favicon.ico 'discovered' from every other HTTP fetch
* Extractor.java
    utility method addOutlink()
2010-06-01 23:36:16 +00:00
szznax d1f27aaecd removed no-longer-referenced "recoveryDir" property from "frontier" bean 2010-05-27 17:46:44 +00:00
nlevitt 72bdad74e9 * pom.xml
install source jars to maven repository
2010-05-26 04:41:22 +00:00
nlevitt 0dbc773fc8 Followup on HER-1728 - treat flashvars strings more like url query strings
(key=value&[key=value]*)
* ExtractorHTML.java
    considerQueryStringValues(): split pairs on "&" instead of ";" and
    url-decode values
2010-05-15 02:13:19 +00:00
nlevitt f7a9327334 Fix for [HER-1772] NullPointerException in ExtractorHTML related to flashvars
* modules/src/main/java/org/archive/modules/extractor/ExtractorHTML.java
    processGeneralTag(): check for null nameVal
2010-05-11 22:11:38 +00:00
gojomo e3c608fab4 HER-1762 H3 performance tuning
* ExtractorHTML.java
    smaller caps on element-name, attribute-name, attribute-value lengths -- costly match-failures on bad/non-HTML may be eating a lot of cycles
2010-04-29 23:21:38 +00:00
gojomo 95bf82e2d3 followup for HER-1688 remember external job directories
* Engine.java
    suppress WARNING for common case of harmless failure during rescans: job already exists
* EngineResource.java
    suppress rescan on each reload (ODD: steve had already committed this change -- I got the commit email -- but now the repo version is missing it. Sourceforge problems?)
2010-04-29 23:20:22 +00:00
gojomo fcd0ec6699 HER-1762 H3 performance tuning
* WorkQueueFrontier.java
    override schedule() to keep unique-testing in calling thread; may remove bottleneck shown by time-profiling and thread-observation (most ToeThreads stuck in candidatesProcessor, schedule()ing to frontier)
* AbstractFrontier.java
    add comment about implementation vs. subclass override
2010-04-27 21:37:24 +00:00
gojomo e10a14df54 HER-1753 offer means of setting login/password that doesn't leak to process info (as when literally specified to '-a' option)
* Heritrix.java
    allow [username:]password to come from file, supplied to '-a' with '@' prefix
    also, clean up options names/help text to match current behavior
    also, offer warning about particularly weak (<8 characters, all letters, all numbers) passwords
2010-04-27 01:36:38 +00:00
gojomo b639873dae Fix broken test
* Engine.java
    tolerate (with return-false-forfailure rather than NPE) non-job directories
* EngineTest.java
    use empty temp job directory rather than (possibly full-of-junk) general junit-tests directory
2010-04-27 00:44:36 +00:00
szznax 57c857d5c6 Refinement of fixes for HER-1688 remember external job directories
* EngineResource.java
    avoid calling findJobConfigs() on each page load
2010-04-26 23:33:40 +00:00
gojomo 5034c7d96e correct spaces-for-tabs 2010-04-26 22:28:43 +00:00
gojomo c4946d04d0 HER-1688 remember external job directories
* EngineResource.java, Engine.java
    refactor for less branching/redundancy
2010-04-26 22:22:09 +00:00
szznax 14b8649aa9 minor cleanup/clarification on review 2010-04-26 21:49:41 +00:00
gojomo 27cca4da60 Refinement of HER-1737 excessive job.log WARNINGs for misreported encoding (FLV reported as text/html;charset=UTF-8
* ReplayCharSequence.java, GenericReplayCharSequence.java, InMemoryReplayCharSequence.java
    store actual first exception for reference
* ExtractorHTML.java
    report exception in nonfatal-log, rather than WARNING (which was still polluting job log more than desired -- but should still be logged to allow future investigation of sites where encoding issues may exist)
2010-04-24 02:22:24 +00:00
gojomo 9fc5e42cfe Fix failing test
* InMemoryReplayCharSequence.java
    ensure redecode after problem restarts at right position
2010-04-23 22:57:50 +00:00
gojomo 792d8e528b HER-1766 The use of the MatchesFilePatternDecideRule with the CUSTOM preset causes a fatal error (infinite loop)
* MatchesFilePatternDecideRule.java
    fix getRegex() to super.getRegex()
2010-04-23 22:16:25 +00:00
gojomo 2855572278 ? 2010-04-23 04:20:12 +00:00
gojomo a7caceb8ad HER-1737 excessive job.log WARNINGs for misreported encoding (FLV reported as text/html;charset=UTF-8
* ReplayCharSequence.java
    new interface method: getDecoderExceptionCount(), reporting >0 if any decoding problems were encountered and silently replaced
* GenericReplayCharSequence.java
    count decoding problems, and only log as FINE rather than WARNING
* InMemoryReplayCharSequence.java
    try decoding with reporting; if any problems note at least one then decode without reporting errors
* ExtractorHTML.java
    after using ReplayCharSequence, log WARNING if nonzero decoding errors
2010-04-23 04:11:53 +00:00
gojomo 67bf73026f remove obsolete/moved example properties 2010-04-23 04:05:31 +00:00
gojomo cb5ec19b6c HER-1765 quiet excessive INFO level logging
* GenericReplayCharSequence.java
* Scoper.java
* FetchFTP.java
* FetchHTTP.java
    demote a bunch of INFO logging to FINE so that be default, console isn't filled with output for every URI handled by a busy crawl
2010-04-23 00:44:25 +00:00
gojomo 3f0059c8a8 * BeanBrowseResource.java
remove extraneous close() that seemed to be causing (harmless but distracting) console error stacks after web hits
2010-04-23 00:41:25 +00:00
gojomo 9fd648f3ef HER-1467 Allow periodic checkpointing and checkpoint-copy-logs to be set/unset during crawl
* CheckpointService.java
    reorganize so that checkpoint timedTask is reset whenever interval is reset on a running crawl
* CheckpointSuccessEvent.java, CrawlJob.java
    report successes as new kind of ApplicationEvent; propagagte to job log
* BdbModule.java
    remove obsolete unconsulted checkpointCopyLogs setting
2010-04-23 00:15:44 +00:00
gojomo ca32d0d448 HER-1692 Cannot create profile with same name as job
* JobResource.java
    if destination of copy-job fails, show flash error
2010-04-22 01:59:41 +00:00
gojomo c1207582c4 HER-1728 Heritrix could be enhanced to parse flashvars parameter to correctly extract the links
* ExtractorHTMLTest.java
    tests for embed/@flshvars, param[@name=flashvars]/@value likely-URI discovery
* ExtractorHTML.java
    move likely-URI testing to UriUtils
    add FLASHVARS support
* JerichoExtractorHTML.java
    use UriUtils ikely-URI testing
    add FLASHVARS support
2010-04-22 01:27:24 +00:00
gojomo f933dc922d HER-1763 unify/improve/document likely-URI string tests
* UriUtils.java
    move likely-URI heuristics here for better consistency, reuse, testing, improvement
* UriUtilsTest.java
    testing for UriUtils
* ExtractorJS.java
    move likely-URI support to UriUtils; use new test
* ExtractoSWF.java
    use new UriUtils likely-URI testing
* ExtractorHTML.java
    move likely-URI testing to UriUtils, use new test
* JerichoExtractorHTML.java
    use new UriUtils likely-URI testing
2010-04-22 01:08:14 +00:00
gojomo 72fb1c55bd Move TLD list to resource file for easier drop-in updating
* ArchiveUtils.java
    read TLDs from tlds-alpha-by-domain.txt
* ArchiveUtilsTest.java
    verify TLDs read
* tlds-alpha-by-domain.txt
    from http://data.iana.org/TLD/tlds-alpha-by-domain.txt
2010-04-22 01:05:23 +00:00
gojomo f018a2e6f1 * StatisticsTracker.java
correct outdated comment
2010-04-13 22:47:19 +00:00
gojomo affa3b672c HER-1620 Tolerate trailing '*' in robots disallow (& allow?) rules
* Robotstxt.java
    trim single trailing '*' if present (assume unintentional or redundant)
2010-04-13 22:46:23 +00:00
gojomo 9e12e4abe5 test/deprecation cleanup
* CachedBdbMap.java
   @deprecated
* BdbModule.java
   note (unused) 'CBM' option is deprecated
* ObjectIdentityBdbCache.java
   tighten logging to FINE
* ObjectIdentityBdbCacheTest.java
   fix test that was only trying to log, rather than fail, problems
2010-04-13 02:15:53 +00:00
gojomo a82838cd27 HER-1756 improved crawl status reporting: more definitive start-after-setup, conclusion-after-logging of crawling
* AbstractFrontier.java
    call new finalTasks just before announcing FINISH state
* WorkQueueFrontier.java
    eliminate closeQueue
* BdbFrontier.java
    move dumpAllPendingToLog from closeQueue (triggered by CrawlController FINISHED) to finalTasks (before Frontier FINISH)
    replace closeQueue with close() override
2010-04-13 02:10:56 +00:00
gojomo 8be7be2983 fix race causing intermittent test failures on MacOS
* CrawlJob.java
    synchronize methods which mutate or change behavior based on field 'ac'; previously, some self-tests were exitting/failing immediately because they were not seeing a non-null 'ac' value.
2010-04-13 00:55:09 +00:00
gojomo 1698412130 HER-1450 Reading at EOF using read(byte[]) causes position pointer to decrement.
* ARCWriterTest.java
    one more test to ensure the problem with read(void) was exercised/fixed
2010-04-09 21:25:26 +00:00
szznax cc6fb841d9 part of fix for [HER-1450] Reading at EOF using read(byte[]) causes position pointer to decrement.
* ArchiveRecord.java
    do not decrement position after EOR, port from H1
* ARCWriterTest.java
    added testArchiveRecordEORConsistent(), testArchiveRecordMarkSupport()
        port from H1
2010-04-09 18:25:16 +00:00
gojomo 647a0b3edf HER-1754 treat robots.txt non-response as 404 (optionally?)
* CrawlServer.java
    enable a specific kind of connect-lost (no response given) to be counted as 'deemed 404' on robots retries over a minimum
* FetchStatusCodes.java
    add a synthetic code: -404, S_DEEMED_NOT_FOUND
* FetchHTTP.java
    better distinguish CONNECT_FAILED and CONNECT_LOST
* DispositionProcessor.java
    treat CONNECT_LOST same as _FAILED; simplify a test
2010-04-02 03:55:12 +00:00
szznax 693f050fb7 successfully adding external job dir is ACK flash kind 2010-03-29 15:56:09 +00:00
gojomo fd5644f109 HER-1627 followup: show error rather than match faulReadSize
* PersistProcessor.java
    rename setupEnvironment to setupCopyEnvironment to make limited purpose of env clear; catch and rethrow IllegalArgumentException with hint that second-open may be cause
* PersistLoadProcessor.java 
    catch and display IllegalArgumentException same as other failure-to-open SEVERE but proceedable exceptions
* PrecedenceLoader.java
    update method names
2010-03-26 01:02:48 +00:00
gojomo 37c32b4e5c Maven cleanup to enable warningless build on fresh machine with Maven2.2.0:
* engine/pom.xml
    restore a reference to a (new version of a) necessary servlet library
* pom.xml
    remove deprecated {pom.artifactId}; add needed javadoc module version decl
* .classpath
    update ref to currently-used servlet jar
2010-03-23 22:57:27 +00:00