Commit Graph
72 Commits
Author SHA1 Message Date
gojomo cb8a374e5d [HER-1636] H3: Failed get of replay char sequence due the OutOfMemoryError: Map failed (port HER-1482)
(from nlevitt's H2 commit message:)
* InMemoryReplayCharSequence.java
    new, simple ReplayCharSequence that supports any encoding, keeping everything in memory
* GenericReplayCharSequence.java
    If the encoding supports random access, memory maps the backing file directly; otherwise decodes to UTF-16 and maps that. Supports the first Integer.MAX_VALUE bytes of the file. Maps up to 64M; moves the map around as necessary for larger files.
* Latin1ByteReplayCharSequence.java
    removed, functionality split between InMemoryReplayCharSequence and GenericReplayCharSequence
* ReplayCharSequenceTest.java
    xestHugeReplayCharSequence() - uncomment to test a huge replay char sequence
    testReplayCharSequenceByteToStringOverflow() - test both UTF-8 and windows-1252
* RecordingOutputStream.java
    use the new ReplayCharSequences
2009-07-07 21:53:57 +00:00
gojomo 1128ad638b [HER-1609] wide crawl performance is limited by lock contention in ServerCache.getServerFor(String)
* CachedBdbMap.java
    remove unnecessary import of CrawlController (from engine subproject)
2009-07-07 01:35:56 +00:00
gojomo 89a55c7fdd * JobResource.java
make UI more robust against browser/platform font size variances
2009-07-06 23:37:30 +00:00
gojomo 149fc414df [HER-1609] wide crawl performance is limited by lock contention in ServerCache.getServerFor(String)
* (all, especially CachedBdbMap.java) 
    pbaclace-contributed patch, ported to H3, plus...
* StatisticsTracker.java
    replace LongWrapper with AtomicLong
    use non-recursive putIfAbsent-based idiom for get-or-create
* DefaultServerCache.java
    clean up host/server get-or-create around non-recursive concurrent idiom
* BdbModule.java
    add expectedConcurrency property & je.lock.nLockTables tuning
* TopNSet.java
    add synchronization, as calling StatisticsTracker method has lost it
2009-07-06 23:36:17 +00:00
gojomo 4583ff7306 Rename Rrc2617Credential to HttpAuthenticationCredential
* (multiple)
    use more-familiar name for HTTP authentication
2009-07-06 22:09:52 +00:00
gojomo 56b31490c8 [HER-1574] meta refresh urls not html unescaped
* ExtractorHTML.java
    apply same 1-line fix as H1/H2
2009-06-11 23:06:07 +00:00
gojomo 721089044a * **/pom.xml
revert version name to SNAPSHOT
2009-06-11 09:09:43 +00:00
gojomo e8e5fdd9a4 * **/pom.xml
rename version to 'alpha' for distinguished 'alpha' identified build (instead of SNAPSHOT/timestamp)
2009-06-11 08:06:19 +00:00
gojomo ecd93ae458 Fixes from trial guide testing
* Heritrix.java
    fail-fast with helpful error message if launched with Java < 1.6
* EditRepresentation.java
    "save changes" rather than "update content"
* EngineApplication.java
    customize restlet error to include back-button and full stack (instead of link to HTTP spec!)
2009-06-10 22:31:44 +00:00
gojomo 27783e87ab Fixes from trial guide testing
* StatisticsTracker.java
    allow Crawl Summary report to complete even pre-launch
* BeanBrowseResource.java, ScriptResource.java
    add page title, backlink to job
* EngineResource.java, PagedRepresentation.java
    better in-page labeling
2009-06-09 21:59:45 +00:00
gojomo c2b82efb89 Fixes from trial guide testing
* EngineApplication.java
    better handle job directories with spaces in them
2009-06-09 08:22:21 +00:00
gojomo 3862c361a4 Fixes from trial guide testing
* defaults.xml
    remove error-causing redundant BdbCookieStorage declaration
* TextUtils.java
    exception- and deprecation-free UTF8 URL escaping
* CrawlJob.java, JobResource.java
    ensure job log shows INFO-level items
    better handle job directories with spaces in them
2009-06-08 23:30:55 +00:00
gojomo 02b5ca5f1d [HER-1601] Restletify: per-job operator arbitrary script execution
* ScriptResource.java
    textarea offering execution of any script supported by available JSR-223 script engines
2009-06-05 02:59:28 +00:00
gojomo 28ed31c498 [HER-1604] Springify/restletify: offer web interface to view/edit beans in running crawl
* BeanBrowseResource.java
    offers browsing (and limited editting of simple values) of beans in built crawl
* JobRelatedResource.java, ReportGenResource.java
    refactor for reuse by other job sub-resources
* JobResource.java
    link to job/beans and job/script
* DescriptorUpdater.java
    helper for marking-up PropertyDescriptors to aid UI bean access
* CrawlJob.java
    don't auto-instantiate context on request
* EngineApplication.java
    add uri routes
* FetchHTTP.java, BdbCookieStorage.java, LongWrapper.java WorkQueueFrontier.java, BdbUriUniqFilter.java
   improve display when browsed (esp. before launch)
2009-06-05 02:51:11 +00:00
gojomo 771d23240c refactor sheets to better enable mid-crawl changes
* Sheet.java
    make non-abstract; allow for name that might not be beanName
* SheetAssociation.java
    define targets as list of names, rather than Sheets themselves
* SheetForDecideRuled.java -> DecideRuledSheetAssociation.java; SheetForSurtPrefixes.java -> SurtPrefixesSheetAssociation.java
    make association separate from Sheet -- so same Sheet can be associated more than one place, more than one way
* SheetOverlaysManager.java
    match changes to Sheet and SheetAssociations
    offer convenience methods for post-construction addition of Sheets, associations
    use internal name-to-Sheet mapping, allowing for mid-crawl Sheet additions not in bean factory
* Precedence1SelfTest.java, Precedence4SelfTest.java
    update configs for Sheet changes
2009-06-05 02:12:32 +00:00
gojomo d336ea760f quiet excessive logging 2009-06-05 02:00:07 +00:00
gojomo 92f5ca2a45 remove unused imports/code 2009-06-05 01:12:51 +00:00
gojomo 02dd47b8dc [HER-1505] Expand BeanshellProcessor/BeanshellDecideRule for every JVM-friendly scripting language (Javascript/Jython/Groovy/JRuby)
* BeanShellProcessor.java -> ScriptedProcessor.java; BeanShellDecideRule.java -> ScriptedDecideRule.java
    update to use any present JSR-223 scripting engine (requested by free-text name) 
    update to allow script to come from inline string or file (just as with seeds)
* modules/pom.xml
    include groovy and jsr-223-capable JARs
* .classpath
    add new JARs to classpath
* BeanShellProcessorTest.java -> ScriptedProcessorTest.java
    rename (empty) test class
2009-06-05 01:03:10 +00:00
gojomo 7ca3fbff72 * heritrix.cmd
remove JMX-related paths; streamline comments; link to Heritrix3-on-Windows wiki page
2009-05-28 00:05:44 +00:00
szznax 6a5b5e4639 Fix HER-1509 changes carried forward from h2
* DefaultProcessorURI.java
  add constructor that supports setting via
* CustomSWFTags.java, CrawlUriSWFAction.java
  look for links in a couple more places
* ExtractorSWF.java
  ExtractorTagParser.parsePlaceObject2() - read 32 bit clip event
    flags when flash version >= 6
* ExtractorSWFTest.java
  xestHer1509() - test this fix (rename to enable the test)
2009-05-23 00:17:41 +00:00
szznax b125b05deb minor improvement
* TestUtils.java
  added tmpDir() w/deleteOnExit() as a convenience method for
  classes not needing to implement TmpDirTestCase
2009-05-21 23:46:34 +00:00
szznax 8c0b539331 minor improvement
* CrawlURI.java
  removed static MAX_OUTLINKS in favor of ExtractorParameters.getMaxOutlinks()
2009-05-21 23:39:50 +00:00
szznax 78a38d6fc1 minor improvement
* Extractor.java
  added instance initializer for DEFAULT_PARAMETERS, and set
  @Autowired(required=false) eliminates the need for test
  classes to set them explicitly.
* ExtractorCSSTest.java
  remove explicit setting of default parameters
* ExtractorHTMLTest.java
  remove explicit setting of default parameters
* JerichoExtractorHTMLTest.java
  remove explicit setting of default parameters
2009-05-21 23:34:18 +00:00
gojomo ca8a02bb17 [HER-1637] upgrade JE jar to 3.3.82
* commons/pom.xml, .classpath
    update refs to 3.3.82
2009-05-21 05:46:27 +00:00
gojomo 5746e422df [HER-1598] Restletify: enable report generating, viewing, refreshing
* ReportGenResource.java
    restlet to generate-report-to-file and redirect to view file
* JobResource.java
    links to reports from appropriate places for built job
    clarify profiles, simplify into-job-dir path-construction
* CrawlJob.java
    remove leading '/' from job-relative paths
* EngineApplication.java
    install ReportGenResource at appropriate in-job path
2009-05-18 21:23:31 +00:00
gojomo 895e822a81 [HER-1598] Restletify: enable report generating, viewing, refreshing
* StatisticsTracker.java
    fortify for reporting even pre-start/post-stop
    add new report types, new groupings: ALL_, LIVE_, END_
    dump END_ reports at stop()
    dump report by short (class) name
2009-05-18 21:20:55 +00:00
gojomo a504d518ba [HER-1598] Restletify: enable report generating, viewing, refreshing
* CrawlController.java
    fortify for report-generation even pre-start/post-stop
2009-05-18 21:18:03 +00:00
gojomo 7e4245bfee [HER-1598] Restletify: enable report generating, viewing, refreshing
* FrontierSummaryReport.java, FrontierNonemptyReport.java, ToeThreadsReport.java
    Report classes for usual frontier/toethread situations
2009-05-18 21:15:26 +00:00
gojomo 25b5da8c5b pull Lifecycle interface up to interface 2009-05-18 21:07:28 +00:00
szznax 35fbf91626 added joda-time dependency, used in 2009-05-18 17:45:31 +00:00
szznax 3f6d60a054 copy to h3
Fix for [HER-1588] Arc2Warc transformed WARC has incorrect date in warcinfo record
* Arc2Warc.java
  correct WARC-Date format, and use Joda-time
2009-05-15 18:19:45 +00:00
gojomo 8b59ef1086 Restore directory-browsing broken by password Guard
* Heritrix.java
    reorder restlet setup so Context is passed through Guard to EngineApplication
2009-05-15 02:02:04 +00:00
gojomo 81a9a9f0f3 Fix unit test
* BadURIsStopPageParsingSelfTest.java
    update expected URIs to match H2 branch / fixed code
2009-05-15 00:27:27 +00:00
gojomo a84e5b5dca copied to h3 from h2 commits
Misc: maintain object identity of peek()ed objects
* StoredQueueTest.java
    test that consecutive peek()s return exactly identical object
* StoredQueue.java
    cache head object object for peek consistency
2009-05-15 00:08:29 +00:00
szznax c891a0b278 copy to h3 2009-05-14 23:55:45 +00:00
gojomo 5a4e8c63d3 copy to h3
Fix for [HER-1533] robots.txt fetch referer header is via url which is confusing
* FetchHTTP.java
    configureMethod() don't set referer header if this is a prerequisite
2009-05-14 22:35:47 +00:00
gojomo bb6d1c9c41 copy to h3
Fix for [HER-1570] update extensions regexps in MatchesFilePatternDecideRule
* MatchesFilePatternDecideRule.java
2009-05-14 22:32:47 +00:00
gojomo dccf2becae copy to h3
Fix for [HER-1612] lock contention in BeanShellDecideRule/BeanShellProcessor occurs even if isolate-threads=true
* BeanShellDecideRule.java
    (getInterpreter) add synchronization
    (decisionFor) remove method synchronization; sync on interpreter/getInterpreter makes it a superfluous bottleneck
* BeanShellProcessor.java
    (getInterpreter) add synchronization
    (innerProcess) remove method synchronization; sync on interpreter/getInterpreter makes it a superfluous bottleneck
2009-05-14 22:27:10 +00:00
gojomo dc117fb958 * commons/pom.xml
use latest 3.3.75 bdb je jar
2009-05-14 22:26:21 +00:00
gojomo 58c9e5f0b1 copy to h3
Fix for [HER-1567] extractor for Wap 2.0 pages -- reported by Christian Dehning
* ExtractorHTML.java
    shouldExtract() - accept various Wap mime types
2009-05-14 22:23:17 +00:00
gojomo db794496fb copy to h3
Fix for [HER-1550] set-source-tag option nonfunctional
* CrawlURI.java
    ensure 'heritable' key is itself heritable; also change heritable collection to a set
2009-05-14 22:20:07 +00:00
gojomo 58d2a2ec31 copy to h3
Fix for [HER-1552] Redirects not reported in seeds-report
* ExtractorHTTP.java
    restore expected convention of http-header context ending in ':'
2009-05-14 22:10:06 +00:00
gojomo a1e9d064da copy to h3
Fix for [HER-1520] Windows mapped-files cause intermittent ReplayCharSequenceTest.testReplayCharSequenceByteToStringMulti failures, risk other problems
* GenericReplayCharSequence.java
    use more diverse filenames, so subsequent decodes don't run into lingering open mapped sections of previous decodes
    do delete via new FileUtils.deleteSoonerOrLater utility
* FileUtils.java
   (deleteSoonerOrLater) try immediate delete, but if fails, add to a list of files to be retried later
2009-05-14 21:31:45 +00:00
gojomo 9155e5f4f9 copying noah's work to h3
Fix for [HER-1506] ByteReplayCharSequence ignores specified/non-default character encodings, reported by Jean-No?\195?\171l Rivasseau
* RecordingOutputStream.java
    use ByteReplayCharSequence only for iso8859-1
* ReplayCharSequenceTest.java
    new tests for iso8859-1, windows-1252 and ascii
2009-05-14 21:19:24 +00:00
gojomo ad33d302ff copying noah's work to h3
[HER-1506] correct javadoc on use of these classes
* GenericReplayCharSequence.java
* Latin1ByteReplayCharSequence.java
2009-05-14 21:12:34 +00:00
gojomo 5baac7cc45 copying noah's work to h3
[HER-1506] rename classes to reflect true roles
* MultiByteReplayCharSequence.java -> GenericReplayCharSequence.java
* ByteReplayCharSequence.java -> Latin1ByteReplayCharSequence.java
* RecordingOutputStream.java
    update references
2009-05-14 21:10:44 +00:00
gojomo 37ea37b883 Fix for [HER-1564] Update 'public suffix list' (effective_tld_names.dat)
* effective_tld_names.dat
    update to latest version from publisuffix.org (Mozilla) -- downloaded 2009-05-14
2009-05-14 20:56:51 +00:00
gojomo dae03cb1de port to h3 noah's fix
Fix for [HER-1533] bottleneck in StatisticsTracker.saveSourceStats
* StatisticsTrackerImpl.java
    saveSourceStats() -- call put() on the CachedBdbMap only when entry is
    added, not on every change
2009-05-14 20:51:46 +00:00
gojomo 8c620ae846 Fix for [HER-1632] Update Jericho HTML Parser to 2.6
* commons/pom.xml
    update requested versions to 2.6.1
2009-05-14 20:47:29 +00:00
gojomo e9622784f6 Apply to h3
Fix for [HER-1225] HtmlFormCredential.java may create non-wellformed URLs
* HtmlFormCredential.java
    only insert '&' if previous query-string was non-empty
2009-05-14 20:32:42 +00:00